[x265] MinGW/GCC: Unsupported intrinsics in Win32/8bit compilation?
Mario *LigH* Rohkrämer
contact at ligh.de
Tue Sep 17 14:07:14 CEST 2019
Triple the errors for Win64 target, where all precisions have assembler
routines:
+----
[ 85%] Linking CXX shared library libx265.dll
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x31):
undefined reference to
`x265::setupIntrinsicDCT_sse3(x265::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x3e):
undefined reference to
`x265::setupIntrinsicDCT_ssse3(x265::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x55):
undefined reference to
`x265::setupIntrinsicDCT_sse41(x265::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main10.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x31):
undefined reference to
`x265_10bit::setupIntrinsicDCT_sse3(x265_10bit::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main10.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x3e):
undefined reference to
`x265_10bit::setupIntrinsicDCT_ssse3(x265_10bit::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main10.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x55):
undefined reference to
`x265_10bit::setupIntrinsicDCT_sse41(x265_10bit::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main12.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x31):
undefined reference to
`x265_12bit::setupIntrinsicDCT_sse3(x265_12bit::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main12.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x3e):
undefined reference to
`x265_12bit::setupIntrinsicDCT_ssse3(x265_12bit::EncoderPrimitives&)'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
.\libx265_main12.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x55):
undefined reference to
`x265_12bit::setupIntrinsicDCT_sse41(x265_12bit::EncoderPrimitives&)'
+----
Mario *LigH* Rohkrämer schrieb am 17.09.2019 um 13:25:
> I tried to build a multilib encoder for Win32 in MSYS2/MinGW32 with GCC
> 9.2.0. The librraries for 10 and 12 bit precision passed (without any
> Assembler optimization). The linking for the 8 bit precision library
> failed:
>
> +----
> [ 82%] Built target common
> Scanning dependencies of target x265-shared
> [ 83%] Building RC object CMakeFiles/x265-shared.dir/x265.rc.obj
> [ 84%] Linking CXX shared library libx265.dll
> E:/MABS/msys64/mingw32/bin/../lib/gcc/i686-w64-mingw32/9.2.0/../../../../i686-w64-mingw32/bin/ld.exe:
> CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x2c):
> undefined reference to
> `x265::setupIntrinsicDCT_sse3(x265::EncoderPrimitives&)'
> E:/MABS/msys64/mingw32/bin/../lib/gcc/i686-w64-mingw32/9.2.0/../../../../i686-w64-mingw32/bin/ld.exe:
> CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x39):
> undefined reference to
> `x265::setupIntrinsicDCT_ssse3(x265::EncoderPrimitives&)'
> E:/MABS/msys64/mingw32/bin/../lib/gcc/i686-w64-mingw32/9.2.0/../../../../i686-w64-mingw32/bin/ld.exe:
> CMakeFiles/x265-shared.dir/objects.a(vec-primitives.cpp.obj):vec-primitives.cpp:(.text+0x4f):
> undefined reference to
> `x265::setupIntrinsicDCT_sse41(x265::EncoderPrimitives&)'
> +----
>
> Please note that it compiled despite some ccache warnings. I don't know
> if ccache has any impact here. I read in the patch notes when
> media-autobuild suite introduced experimental ccache support that it
> "needs to run at least once to have any effect", but that may only be
> related to speed-up effects in subsequent compilations?
>
--
Fun and success!
Mario *LigH* Rohkrämer
maito:contact at ligh.de
More information about the x265-devel
mailing list