How to Resolve Undefined Symbols for Architecture x86_64 While Compiling FFmpeg with x264?
I am working on compiling FFmpeg version 0.9.0.git with x264 version 0.120 on an x86_64 system, and I am encountering an issue during the build process.
Here’s how I am configuring FFmpeg:
After configuring, I run
I expected the build to complete successfully without errors, allowing me to use the compiled FFmpeg with x264
Instead, the build process failed with the linker unable to find certain symbols (
I tried cleaning the build directory and recompiling, but the issue persists.
Does anyone have experience with this specific error or know how to resolve the undefined symbols for architecture x86_64? Any advice on what I might be missing or what additional dependencies I need to check for?
Here’s how I am configuring FFmpeg:
After configuring, I run
make, but during the linking phase, I get the following error:I expected the build to complete successfully without errors, allowing me to use the compiled FFmpeg with x264
Instead, the build process failed with the linker unable to find certain symbols (
_MM_FIX_0_707106781 and _MM_FIX_0_541196100) for the x86_64 architecture, which seem to be referenced by the file vf_fspp.o in libavfilter.a.I tried cleaning the build directory and recompiling, but the issue persists.
Does anyone have experience with this specific error or know how to resolve the undefined symbols for architecture x86_64? Any advice on what I might be missing or what additional dependencies I need to check for?
Solution
If you are on a Mac, then this post from StackOverflow may help
https://stackoverflow.com/questions/5338068/problem-with-link-time-optimization-causing-undefined-symbols-with-asm-constants
https://stackoverflow.com/questions/5338068/problem-with-link-time-optimization-causing-undefined-symbols-with-asm-constants
Stack Overflow
I am compiling mplayer with llvm-gcc-4.2.1.
With '-O1' (which disables link time optimization), the program successfully compiles and links. With '-O2' or '-O1 -flto', ld complains of undefined
With '-O1' (which disables link time optimization), the program successfully compiles and links. With '-O2' or '-O1 -flto', ld complains of undefined