[libav-tools] cross compile problem with yasm

Farkas Levente lfarkas at lfarkas.org
Wed Aug 3 14:54:45 CEST 2011


sorry forget this last mail.
it's a bug on my end with mingw32 build...

On 08/03/2011 11:26 AM, Farkas Levente wrote:
> On 08/03/2011 10:47 AM, Luca Barbato wrote:
>> On 8/2/11 2:02 PM, Farkas Levente wrote:
>>> On 08/02/2011 01:41 PM, Luca Barbato wrote:
>>>> On 8/2/11 10:43 AM, Farkas Levente wrote:
>>>>> On Mon, Aug 1, 2011 at 14:55, Luca Barbato<lu_zero at gentoo.org>   wrote:
>>>>>> qlist -Iv yasm mingw
>>>>>> cross-i686-w64-mingw32/binutils-2.21
>>>>>> cross-i686-w64-mingw32/gcc-4.5.2
>>>>>> cross-i686-w64-mingw32/mingw64-runtime-20101003
>>>>>> cross-mingw32/binutils-2.21
>>>>>> cross-mingw32/gcc-4.5.2
>>>>>> cross-mingw32/mingw-runtime-3.18
>>>>>> cross-mingw32/w32api-3.15
>>>>>> cross-x86_64-w64-mingw32/binutils-2.21
>>>>>> cross-x86_64-w64-mingw32/gcc-4.5.2
>>>>>> cross-x86_64-w64-mingw32/mingw64-runtime-20101003
>>>>>> dev-lang/yasm-1.1.0-r1
>>>>>>
>>>>>> Those are my versions for the toolchains not sure how much it helps.
>>>>>
>>>>> do you hvae bot mingw32 and i686-w64-mingw32 installed? which one do
>>>>> you use to build http://win32.libav.org/win32/ ?
>>>>
>>>> mingw32 , the i686-mingw64 is used to test pthreads support.
>>>
>>> and anyway the comment the top of this page
>>> http://win32.libav.org/win64/
>>> said MinGW-w64 autobuild, but on the bottom of the page the "Build
>>> flags" said: --cross-prefix=mingw32- --arch=i686 --target-os=mingw32 ...
>>> or it's just a typo?
>>>
>> Yes, thank you for pointing, fixed now =)
> 
> now i switch to mingw32 and try to build with that. now i've got another
> problem which is imho a bug in libav's build scripts.
> 
> while i configure this:
> ./configure --prefix=/usr/i686-pc-mingw32/sys-root/mingw \
>         --enable-cross-compile \
>         --cross-prefix=i686-pc-mingw32- \
>         --arch=i686 \
>         --target-os=mingw32 \
>         --enable-runtime-cpudetect \
>         --enable-memalign-hack \
>         --enable-shared \
>         --enable-postproc \
>         --enable-gpl
> 
> the missign lib is the pthreads (even if it's installed), but it seems
> that the linker can't find it. the only thing which i find in config.mak:
> EXTRALIBS=-lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> which is good (ie -lpthreadGC2), but it's not in libavutil.pc:
> -------------------------------
> # grep -r pthreadGC2 .|egrep -v config.log
> ./libavdevice/libavdevice-uninstalled.pc:Libs: ${libdir}/libavdevice.a
> -lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> ./libavdevice/libavdevice.pc:Libs.private: -lavicap32 -lws2_32 -lm
> -lpthreadGC2 -lz -lpsapi
> ./libavformat/libavformat-uninstalled.pc:Libs: ${libdir}/libavformat.a
> -lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> ./libavformat/libavformat.pc:Libs.private: -lavicap32 -lws2_32 -lm
> -lpthreadGC2 -lz -lpsapi
> ./config.mak:EXTRALIBS=-lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> ./libavfilter/libavfilter.pc:Libs.private: -lavicap32 -lws2_32 -lm
> -lpthreadGC2 -lz -lpsapi
> ./libavfilter/libavfilter-uninstalled.pc:Libs: ${libdir}/libavfilter.a
> -lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> ./libavcodec/libavcodec-uninstalled.pc:Libs: ${libdir}/libavcodec.a
> -lavicap32 -lws2_32 -lm -lpthreadGC2 -lz -lpsapi
> ./libavcodec/libavcodec.pc:Libs.private: -lavicap32 -lws2_32 -lm
> -lpthreadGC2 -lz -lpsapi
> ./configure:    elif check_func pthread_create -lpthreadGC2; then
> ./configure:        add_extralibs -lpthreadGC2
> -------------------------------
> 
> this's the error message:
> -------------------------------
> AR	libavdevice/libavdevice.a
> LD	libavutil/avutil-51.dll
> Creating library file: libavutil/libavutil.dll.a
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_key_create':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:582:
> undefined reference to `_TlsAlloc at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:589:
> undefined reference to `___mingwthr_key_dtor'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:593:
> undefined reference to `_GetLastError at 0'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_once':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:547:
> undefined reference to `__CRT_MT'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:554:
> undefined reference to `_InterlockedIncrement at 4'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_setspecific':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:621:
> undefined reference to `_TlsSetValue at 8'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:624:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:621:
> undefined reference to `_TlsSetValue at 8'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:624:
> undefined reference to `_GetLastError at 0'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_getspecific':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_setspecific':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:621:
> undefined reference to `_TlsSetValue at 8'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:621:
> undefined reference to `_TlsSetValue at 8'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_getspecific':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:609:
> undefined reference to `_GetLastError at 0'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:611:
> undefined reference to `_TlsGetValue at 4'
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:613:
> undefined reference to `_SetLastError at 4'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `__gthread_setspecific':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:624:
> undefined reference to `_GetLastError at 0'
> /usr/lib64/gcc/i686-pc-mingw32/4.5.3/libgcc_eh.a(unwind-sjlj.o): In
> function `_Unwind_SjLj_SetContext':
> /builddir/build/BUILD/gcc-4.5.3/build/i686-pc-mingw32/libgcc/../../../libgcc/../gcc/gthr-win32.h:624:
> undefined reference to `_GetLastError at 0'
> -------------------------------
> dare i ask a fix in git?:-)
> regards.
> 

-- 
  Levente                               "Si vis pacem para bellum!"


More information about the libav-tools mailing list