Page MenuHome

Cannot compile latest branch anymore on MacOS (libopus symbol not found)
Closed, InvalidPublic

Description

System Information
Operating system: MacOS Mojave
Graphics card:

Blender Version
Broken: master branch, 2.81.13+
Worked: it used to compile fine until at least 5th of October

Short description of error
Blender compilation fails with a clang linker command

Exact steps for others to reproduce the error
Make update and make.

The error is the following:

[100%] Linking CXX executable ../../bin/Blender.app/Contents/MacOS/Blender
[100%] Built target buildinfoobj
Undefined symbols for architecture x86_64:
"_opus_multistream_decode", referenced from:
    _libopus_decode in libavcodec.a(libopusdec.o)
"_opus_multistream_decode_float", referenced from:
    _libopus_decode in libavcodec.a(libopusdec.o)
"_opus_multistream_decoder_create", referenced from:
    _libopus_decode_init in libavcodec.a(libopusdec.o)
"_opus_multistream_decoder_ctl", referenced from:
    _libopus_decode_init in libavcodec.a(libopusdec.o)
    _libopus_flush in libavcodec.a(libopusdec.o)
"_opus_multistream_decoder_destroy", referenced from:
    _libopus_decode_close in libavcodec.a(libopusdec.o)
"_opus_multistream_encode", referenced from:
    _libopus_encode in libavcodec.a(libopusenc.o)
"_opus_multistream_encode_float", referenced from:
    _libopus_encode in libavcodec.a(libopusenc.o)
"_opus_multistream_encoder_create", referenced from:
    _libopus_encode_init in libavcodec.a(libopusenc.o)
"_opus_multistream_encoder_ctl", referenced from:
    _libopus_encode_init in libavcodec.a(libopusenc.o)
"_opus_multistream_encoder_destroy", referenced from:
    _libopus_encode_init in libavcodec.a(libopusenc.o)
    _libopus_encode_close in libavcodec.a(libopusenc.o)
"_opus_multistream_surround_encoder_create", referenced from:
    _libopus_encode_init in libavcodec.a(libopusenc.o)
"_opus_strerror", referenced from:
    _libopus_decode_init in libavcodec.a(libopusdec.o)
    _libopus_decode in libavcodec.a(libopusdec.o)
    _libopus_encode_init in libavcodec.a(libopusenc.o)
    _libopus_encode in libavcodec.a(libopusenc.o)
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [bin/Blender.app/Contents/MacOS/Blender] Error 1
make[2]: *** [source/creator/CMakeFiles/blender.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2

Details

Type
Bug

Event Timeline

Jacques Lucke (JacquesLucke) claimed this task.

The bug tracker is not for tracking build errors. Please state your problem either in https://blender.chat/channel/blender-coders or on https://devtalk.blender.org/.

In either case, I recommend you try to do a clean build (and maybe update the library dependencies).

Did you updated your libraries from svn? Also, We do not accept issues related to building Blender on this tracker, those are to be handled through devtalk or ML (bf-committers@blender.org).

Aye, I strongly hesitated between devtalk and here. Thanks for the recommendations and for your answers. I did nothing "by hand" other than the regular make update. I even removed the whole lib folder to redownload everything with make update. I'll ask on devtalk then.