Source: ceph
Version: 10.2.5-5
Severity: normal
User: debian-68k@lists.debian.org
Usertags: m68k

Hi!

On at least m68k and powerpc, ceph fails to build from source because the
linker cannot resolve symbols for 64-bit atomics [1]:

/usr/include/c++/6/bits/atomic_base.h:396: undefined reference to 
`__atomic_load_8'
rocksdb/librocksdb.a(version_set.o): In function `std::__atomic_base<unsigned 
long long>::store(unsigned long long, std::memory_order)':
/usr/include/c++/6/bits/atomic_base.h:374: undefined reference to 
`__atomic_store_8'
/usr/include/c++/6/bits/atomic_base.h:374: undefined reference to 
`__atomic_store_8'
rocksdb/librocksdb.a(version_set.o): In function `std::__atomic_base<unsigned 
long long>::load(std::memory_order) const':
(...)
/usr/include/c++/6/bits/atomic_base.h:396: undefined reference to 
`__atomic_load_8'
rocksdb/librocksdb.a(rate_limiter.o): In function `std::__atomic_base<long 
long>::store(long long, std::memory_order)':
/usr/include/c++/6/bits/atomic_base.h:374: undefined reference to 
`__atomic_store_8'
rocksdb/librocksdb.a(rate_limiter.o): In function `std::__atomic_base<long 
long>::load(std::memory_order) const':
/usr/include/c++/6/bits/atomic_base.h:396: undefined reference to 
`__atomic_load_8'
collect2: error: ld returned 1 exit status

This is reminiscent to a similar issue recently fixed in src:limequite [2]. The
patch to resolve it linked -latomic with --as-needed which is a better solution
than the current approach which just hardwires -latomic on mips/mipsel.

Thanks,

Adrian

> [1] 
> https://buildd.debian.org/status/fetch.php?pkg=ceph&arch=m68k&ver=10.2.5-3&stamp=1483847318
> [2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=849536

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Reply via email to