Skip to content

static builds fail to link with the VLC module

libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o  misc/medialibrary/.libs/libmedialibrary_plugin_la-medialibrary.o misc/medialibrary/.libs/libmedialibrary_plugin_la-MetadataExtractor.o misc/medialibrary/.libs/libmedialibrary_plugin_la-entities.o misc/medialibrary/.libs/libmedialibrary_plugin_la-Thumbnailer.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-device.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-directory.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-file.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-fs.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-devicelister.o misc/medialibrary/fs/.libs/libmedialibrary_plugin_la-util.o   -Wl,-rpath -Wl,/home/chouquette/dev/vlc/build/src/.libs -Wl,-rpath -Wl,/home/chouquette/dev/prefix/lib ../compat/.libs/libcompat.a ../src/.libs/libvlccore.so -lidn -ldl -ldbus-1 -L/home/chouquette/dev/prefix/lib -lmedialibrary -lsqlite3 -L/usr/lib/gcc/x86_64-linux-gnu/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o  -pthread -g -O0 -fstack-protector-strong -Wl,-z -Wl,defs -pthread   -pthread -Wl,-soname -Wl,libmedialibrary_plugin.so -Wl,-retain-symbols-file -Wl,.libs/libmedialibrary_plugin.exp -o .libs/libmedialibrary_plugin.so
/usr/bin/ld: /home/chouquette/dev/prefix/lib/libmedialibrary.a(discoverer_DiscovererWorker.cpp.o): in function `std::thread::thread<void (medialibrary::DiscovererWorker::*)(), medialibrary::DiscovererWorker*, void>(void (medialibrary::DiscovererWorker::*&&)(), medialibrary::DiscovererWorker*&&)':
/usr/include/c++/10/thread:142: undefined reference to `pthread_create'
/usr/bin/ld: /home/chouquette/dev/prefix/lib/libmedialibrary.a(thumbnails_ThumbnailerWorker.cpp.o): in function `std::thread::thread<void (medialibrary::ThumbnailerWorker::*)(), medialibrary::ThumbnailerWorker*, void>(void (medialibrary::ThumbnailerWorker::*&&)(), medialibrary::ThumbnailerWorker*&&)':
/usr/include/c++/10/thread:142: undefined reference to `pthread_create'
/usr/bin/ld: /home/chouquette/dev/prefix/lib/libmedialibrary.a(parser_ParserWorker.cpp.o): in function `std::thread::thread<void (medialibrary::parser::Worker::*)(), medialibrary::parser::Worker*, void>(void (medialibrary::parser::Worker::*&&)(), medialibrary::parser::Worker*&&)':
/usr/include/c++/10/thread:142: undefined reference to `pthread_create'
/usr/bin/ld: /home/chouquette/dev/prefix/lib/libmedialibrary.a(utils_ModificationsNotifier.cpp.o): in function `std::thread::thread<void (medialibrary::ModificationNotifier::*)(), medialibrary::ModificationNotifier*, void>(void (medialibrary::ModificationNotifier::*&&)(), medialibrary::ModificationNotifier*&&)':
/usr/include/c++/10/thread:142: undefined reference to `pthread_create'
/usr/bin/ld: /home/chouquette/dev/prefix/lib/libmedialibrary.a(utils_ModificationsNotifier.cpp.o): in function `std::cv_status std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&)':
/usr/include/c++/10/condition_variable:209: undefined reference to `pthread_cond_clockwait'
collect2: error: ld returned 1 exit status

Can be reproduced with the contrib or with the repo installed manually, as long as the build is static

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information