rdp / random-bug-reports

see issues
1 stars 0 forks source link

ffmpeg cannot use libx265 with static libstdc++ #40

Open rdp opened 5 months ago

rdp commented 5 months ago

x86_64-w64-mingw32-gcc: warning: /usr/lib/gcc/x86_64-w64-mingw32/10-win32/libstdc++.a: linker input file unused because linking not done x86_64-w64-mingw32-gcc -static -static-libgcc -static-libstdc++ -lstdc++ -Wl,--nxcompat,--dynamicbase -Wl,--high-entropy-va -Wl,--as-needed -Wl,--image-base,0x140000000 -I/home/rdp/new/sandbox/win64_static/build_files/include -L/home/rdp/new/sandbox/win64_static/build_files/lib /usr/lib/gcc/x86_64-w64-mingw32/10-win32/libstdc++.a -o /tmp/ffconf.RXZx2a2E/test.exe /tmp/ffconf.RXZx2a2E/test.o -lx265 -lgcc /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(api.cpp.obj):api.cpp:(.text+0xfb5): undefined reference to operator new(unsigned long long)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(api.cpp.obj):api.cpp:(.text+0x1303): undefined reference tooperator delete(void)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(api.cpp.obj):api.cpp:(.text+0x53d): undefined reference to `operator delete(void)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(bitstream.cpp.obj):bitstream.cpp:(.text$_ZN4x2659BitstreamD0Ev[_ZN4x2659BitstreamD0Ev]+0x26): undefined reference to operator delete(void*)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(bitstream.cpp.obj):bitstream.cpp:(.rdata$_ZTIN4x26512BitInterfaceE[_ZTIN4x26512BitInterfaceE]+0x0): undefined reference tovtable for cxxabiv1::class_type_info' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(bitstream.cpp.obj):bitstream.cpp:(.rdata$_ZTIN4x2659BitstreamE[_ZTIN4x2659BitstreamE]+0x0): undefined reference to vtable for __cxxabiv1::__si_class_type_info' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(framefilter.cpp.obj):framefilter.cp:(.text+0xe28): undefined reference tooperator delete' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(framefilter.cpp.obj):framefilter.cp:(.text+0xf42): undefined reference to operator new[](unsigned long long)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(sao.cpp.obj):sao.cpp:(.text+0xc66): undefined reference tooperator new[](unsigned long long)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(sao.cpp.obj):sao.cpp:(.text+0xe10): undefined reference to operator new(unsigned long long)' /usr/bin/x86_64-w64-mingw32-ld: /home/rdp/new/sandbox/win64_static/build_files/lib/libx265.a(sao.cpp.obj):sao.cpp:(.text+0xe69): undefined reference tooperator new[](unsigned long long)'

I think this meant a bug in ffmpeg's configure

work around: --extra-libs=-lstdc++ to ffmpeg configure

rdp commented 5 months ago

somehow ffmpeg configure is not using pkg-config --libs right???