GStreamer SDK - link error since upgrading to latest version (2012.11Brahmaputra)

philippe renon philippe_renon at yahoo.fr
Tue Feb 5 13:24:32 PST 2013








>________________________________
> De : Andoni Morales <ylatuya at gmail.com>
>À : philippe renon <philippe_renon at yahoo.fr>; Discussion of the development of and with GStreamer <gstreamer-devel at lists.freedesktop.org> 
>Envoyé le : Mardi 5 février 2013 18h46
>Objet : Re: GStreamer SDK - link error since upgrading to latest version (2012.11Brahmaputra)
> 
>2013/2/5 Andoni Morales <ylatuya at gmail.com>:
>> 2013/2/4 philippe renon <philippe_renon at yahoo.fr>:
>>> Hi Kyrylo,
>>>
>>> Thanks for helping.
>>>
>>> I don't yet have the answer to which C++ runtimes are used.
>>>
>>> But I can provide the details about the project's g++ :
>>>
>>> $ which g++
>>> /d/OPENPI~2/QtSDK/mingw/bin/g++
>>>
>>> $ g++ -v
>>> Using built-in specs.
>>> Target: mingw32
>>> Configured with: ../gcc-4.4.0/configure
>>> --enable-languages=c,ada,c++,fortran,java,objc,obj-c++
>>> --disable-sjlj-exceptions
>>>  --enable-shared --enable-libgcj --enable-libgomp --with-dwarf2
>>> --disable-win32-registry --enable-libstdcxx-debug --enab
>>> le-version-specific-runtime-libs --prefix=/mingw
>>> --with-gmp=/mingw/src/gmp/root --with-mpfr=/mingw/src/mpfr/root --build
>>> =mingw32
>>> Thread model: win32
>>> gcc version 4.4.0 (GCC)
>>>
>>> At this point, I would like to know if the only solution is too make sure
>>> both projects are using the same toolchain.
>>> I hope not as this is a bit out of my league.
>>> Would it possible to "tweak" the project's toolchain or build process to
>>> become compatible with the SDK?
>>> If not, are there other alternatives? Is it in the SDK roadmap to support
>>> alternate toolchains ?
>
>I am not familiar with QT's SDK, but from the download area notes I
>see that they provide a toolchain that's built using the sljl
>exception handling model:
>"The MinGW binary package includes a 32 bit MinGW-builds (gcc 4.7.2,
>sjlj exception handing, posix threading) toolchain."
>
>So you should use this toolchain  instead of MinGW default's one.
>
>Andoni


Hi Andoni,


The Qt 5.0.1 with MinGW toolchain that your are pointing me to just came out ! 

There was a Qt 5.0.0 available but it did not come with MinGW support.
The fact that the new version is apparently compatible with the GStreamer SDK is good news.


OpenPilot is currently using Qt 4.x and the "incompatible"  MinGW toolchain that came with it.

We started a discussion to move to Qt5 but were waiting for the MinGW version.
I'll start experimenting with Qt5 and see if it solves the link error.

Thanks a lot for taking the time to answer my questions.

Philippe.


>>
>> This is an issue with the different exception handling used in GCC.
>> Our toolchain uses the old sljj exceptions while the one you are using
>> uses dwarf. But this shouldn't be an issue unless you are mixing c++
>> libraries.  Are you using QtGStreamer? How are you building it?
>> Can you please describe the steps to reproduce the issue such as which
>> project should we checkout and which branch, configure options, etc...
>>
>> Andoni
>>>
>>> Philippe.
>>>
>>> ----- Mail original -----
>>> De : Kyrylo V Polezhaiev <polezhaiev at ukr.net>
>>> À : philippe renon <philippe_renon at yahoo.fr>
>>> Cc : "gstreamer-devel at lists.freedesktop.org"
>>> <gstreamer-devel at lists.freedesktop.org>
>>> Envoyé le : Dimanche 3 février 2013 18h50
>>> Objet : Re: GStreamer SDK - link error since upgrading to latest version
>>> (2012.11Brahmaputra)
>>>
>>>
>>> Hello,
>>>
>>> What C++ runtime was used for GStreamer and for your project?
>>> Also, GStreamer SDK is separate from GStreamer team project.
>>>
>>>> Hi,
>>>>
>>>> I was quite successful in using the SDK version 2012.9 on Windows 7 (btw
>>>> thanks a million for making it available).
>>>>
>>>> But after upgrading to version 2012.11, I started running into linking
>>>> errors:
>>>>
>>>> mingw32-make[5]: Entering directory
>>>> `d:/Projects/OpenPilot/build/ground/openpilotgcs/src/libs/gst_lib'linking
>>>> ../../../lib/openpilotgcs/GST_libd.dllInfo: resolving vtable for
>>>> __cxxabiv1::__si_class_type_info by linking to
>>>> __imp___ZTVN10__cxxabiv120__si_class_type_infoE (auto-import)Info: resolving
>>>> vtable for __cxxabiv1::__class_type_info by linking to
>>>> __imp___ZTVN10__cxxabiv117__class_type_infoE (auto-import)Info: resolving
>>>> vtable for __cxxabiv1::__vmi_class_type_info by linking to
>>>> __imp___ZTVN10__cxxabiv121__vmi_class_type_infoE (auto-import)Info:
>>>> resolving ___gst_debug_min by linking to __imp____gst_debug_min
>>>> (auto-import)Info: resolving _GST_CAT_DEFAULT by linking to
>>>> __imp__GST_CAT_DEFAULT (auto-import)Creating library file:
>>>>
>>>> d:/Projects/OpenPilot/build/ground/openpilotgcs/lib/openpilotgcs/libGST_libd.ad:/openpi~2/qtsdk/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe:
>>>> warning: auto-importing has been activated without --enable-auto-import
>>>> specified on the command line.This should work unless it involves constant
>>>> data structures referencing symbols from auto-imported
>>>> DLLs.debug/gst_global.o:gst_global.cpp:(.eh_frame+0x12): undefined reference
>>>> to
>>>> `__gxx_personality_v0'debug/videowidget.o:videowidget.cpp:(.eh_frame+0x12):
>>>> undefined reference to
>>>> `__gxx_personality_v0'debug/moc_videowidget.o:moc_videowidget.cpp:(.eh_frame+0x11):
>>>> undefined reference to `__gxx_personality_v0'collect2: ld returned 1 exit
>>>> statusmingw32-make[5]: *** [../../../lib/openpilotgcs/GST_libd.dll] Error 1
>>>>
>>>> Downgrading the SDK makes the problem go away.
>>>>
>>>> I found this post which seems to discuss a similar issue :
>>>> http://gstreamer-devel.966125.n4.nabble.com/Questions-on-MinGW-configuration-of-GStreamer-SDK-Windows-build-td4657961.html
>>>> But not being an expert in toolchains and related matters, I could not
>>>> make a lot of
>>>> sense out of it.
>>>>
>>>> The project I am working on is to add video processing capabilities to the
>>>> Open Pilot (OP) Ground Control Station (GCS) application
>>>> (http://www.openpilot.org/).
>>>> This application is built on QT with mingw. See this link for details
>>>> about the GCS build environment :
>>>> http://wiki.openpilot.org/display/Doc/Windows%3A+Building+and+Packaging
>>>>
>>>> Any help will be greatly appreciated.
>>>>
>>>> filnet.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> gstreamer-devel mailing list
>>>> gstreamer-devel at lists.freedesktop.org
>>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>
>>
>>
>> --
>> Andoni Morales Alastruey
>>
>> LongoMatch:The Digital Coach
>> http://www.longomatch.ylatuya.es
>
>
>
>-- 
>Andoni Morales Alastruey
>
>LongoMatch:The Digital Coach
>http://www.longomatch.ylatuya.es
>
>
>


More information about the gstreamer-devel mailing list