Compilation with clang-11 failed (gcc build successfull)
libboost_atomic = 1.67
$ clang -v
clang version 11.0.0
Selected GCC installation: /usr/bin/../lib/gcc/i586-alt-linux/8
Related commit: https://github.com/0ad/0ad/commit/5431ed81d546233fad3d150cc349cece95a5033d
Linking pyrogenesis /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetEvent>::queue(unsigned int)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetPacket*>::queue(unsigned int)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetEvent>::~queue()': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetPacket*>::~queue()': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o):/usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: more undefined references to `__atomic_load' follow /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetEvent>::node, std::allocator<boost::lockfree::queue<_ENetEvent>::node> >::deallocate_impl_unsafe(boost::lockfree::queue<_ENetEvent>::node*)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetEvent>::node* boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetEvent>::node, std::allocator<boost::lockfree::queue<_ENetEvent>::node> >::allocate_impl<false>()': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetPacket*>::node, std::allocator<boost::lockfree::queue<_ENetPacket*>::node> >::~freelist_stack()': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetPacket*>::node, std::allocator<boost::lockfree::queue<_ENetPacket*>::node> >::deallocate_impl_unsafe(boost::lockfree::queue<_ENetPacket*>::node*)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::queue<_ENetPacket*>::node* boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetPacket*>::node, std::allocator<boost::lockfree::queue<_ENetPacket*>::node> >::allocate_impl<false>()': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetEvent>::unsynchronized_pop<_ENetEvent>(_ENetEvent&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetPacket*>::unsynchronized_pop<_ENetPacket*>(_ENetPacket*&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetEvent>::do_push<false>(_ENetEvent const&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetPacket*>::pop<_ENetPacket*>(_ENetPacket*&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetPacket*>::node, std::allocator<boost::lockfree::queue<_ENetPacket*>::node> >::deallocate_impl(boost::lockfree::queue<_ENetPacket*>::node*)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetEvent>::pop<_ENetEvent>(_ENetEvent&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `boost::lockfree::detail::freelist_stack<boost::lockfree::queue<_ENetEvent>::node, std::allocator<boost::lockfree::queue<_ENetEvent>::node> >::deallocate_impl(boost::lockfree::queue<_ENetEvent>::node*)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: ../../../binaries/system/libnetwork.a(NetSession.o): in function `bool boost::lockfree::queue<_ENetPacket*>::do_push<false>(_ENetPacket* const&)': /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:239: undefined reference to `__atomic_store' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:250: undefined reference to `__atomic_load' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:288: undefined reference to `__atomic_compare_exchange' /usr/bin/ld.default: /usr/bin/../lib/gcc/i586-alt-linux/8/../../../../include/c++/8/atomic:320: undefined reference to `__atomic_compare_exchange' clang-11: error: linker command failed with exit code 1 (use -v to see invocation)