Blender 2.8 build fail on Linux

I’m trying to build 2.8 on my KDE Neon, it say libsnd.a and flac error ,here is the error:

[100%] Linking CXX executable …/…/bin/blender
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function sf_flac_error_callback: error: undefined reference to ‘FLAC__StreamDecoderErrorStatusString’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_seek: error: undefined reference to ‘FLAC__stream_decoder_seek_absolute’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_close: error: undefined reference to ‘FLAC__metadata_object_delete’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_close: error: undefined reference to ‘FLAC__stream_decoder_finish’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_close: error: undefined reference to ‘FLAC__stream_decoder_delete’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_close: error: undefined reference to ‘FLAC__stream_encoder_finish’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_close: error: undefined reference to ‘FLAC__stream_encoder_delete’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__metadata_object_vorbiscomment_entry_from_name_value_pair’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__metadata_object_vorbiscomment_append_comment’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__stream_encoder_set_metadata’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__stream_encoder_init_stream’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__metadata_object_new’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_header: error: undefined reference to ‘FLAC__StreamEncoderInitStatusString’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function sf_flac_meta_callback: error: undefined reference to ‘FLAC__metadata_object_vorbiscomment_find_entry_from’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_delete’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_new’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_set_channels’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_set_sample_rate’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_set_bits_per_sample’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_enc_init: error: undefined reference to ‘FLAC__stream_encoder_set_compression_level’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_d2flac: error: undefined reference to ‘FLAC__stream_encoder_process_interleaved’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_f2flac: error: undefined reference to ‘FLAC__stream_encoder_process_interleaved’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_i2flac: error: undefined reference to ‘FLAC__stream_encoder_process_interleaved’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_write_s2flac: error: undefined reference to ‘FLAC__stream_encoder_process_interleaved’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_read_loop: error: undefined reference to ‘FLAC__stream_decoder_get_state’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_read_loop: error: undefined reference to ‘FLAC__stream_decoder_process_single’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_read_loop: error: undefined reference to ‘FLAC__stream_decoder_get_state’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_read_loop: error: undefined reference to ‘FLAC__StreamDecoderStateString’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_read_loop: error: undefined reference to ‘FLAC__StreamDecoderStateString’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_delete’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_new’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_set_metadata_respond_all’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_init_stream’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_process_until_end_of_metadata’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_get_decode_position’
/usr/lib/x86_64-linux-gnu/libsndfile.a(libsndfile_la-flac.o):function flac_open: error: undefined reference to ‘FLAC__stream_decoder_delete’
collect2: error: ld returned 1 exit status
source/creator/CMakeFiles/blender.dir/build.make:464: recipe for target ‘bin/blender’ failed
make[2]: *** [bin/blender] Error 1
CMakeFiles/Makefile2:7799: recipe for target ‘source/creator/CMakeFiles/blender.dir/all’ failed
make[1]: *** [source/creator/CMakeFiles/blender.dir/all] Error 2
Makefile:162: recipe for target ‘all’ failed
make: *** [all] Error 2

Just wonder what have I missed or should I play with the cmake list file to make it just build ?

I believe that errors with undefined symbols are when you are pointing it at a system library instead of the one on /opt that it was meant to link too. ie: The library it was pointed at is a different version that doesn’t have quite the same interface values.

Perhaps you didn’t run or follow the install_deps.sh instructions quite right? Not my strong area though, so might need to wait until a developer takes a peek at this thread.

Good luck!

libsndfile is from Ubuntu bionic repo, i disabled libsndfile in cmake and it build succesful, thanks

1 Like