Bug#1099488: coot: undefined reference to `__atomic_*' on loong64

zhangdandan zhangdandan at loongson.cn
Tue Mar 4 03:41:47 GMT 2025


Source: coot
Version: 1.1.09+dfsg-4
Severity: normal
Tags: patch
User: debian-loongarch at lists.debian.org
Usertags: loong64

Dear maintainers,

Compiling the coot failed for loong64 in the Debian Package 
Auto-Building environment.
The error log is as follows,
```
......
/usr/bin/ld: mini-rsr.o: in function `bool 
std::__atomic_impl::__compare_exchange<false, 
boost::lockfree::detail::tagged_ptr<boost::lockfree::queue<std::function<void 
(int)>*>::node> 
 >(boost::lockfree::detail::tagged_ptr<boost::lockfree::queue<std::function<void (int)>*>::node>&, std::remove_volatile<boost::lockfree::detail::tagged_ptr<boost::lockfree::queue<std::function<void (int)>*>::node> >::type&, std::remove_volatile<boost::lockfree::detail::tagged_ptr<boost::lockfree::queue<std::function<void (int)>*>::node> >::type&, bool, std::memory_order, std::memory_order)':
/usr/include/c++/14/bits/atomic_base.h:1002:(.text._ZN5boost8lockfree5queueIPSt8functionIFviEEJEE3popIS5_EEbRT_[_ZN5boost8lockfree5queueIPSt8functionIFviEEJEE3popIS5_EEbRT_]+0x180): 
undefined reference to `__atomic_compare_exchange_16'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:910: mini-rsr-bin] Error 1
.......
```
The full build log can be found at 
https://buildd.debian.org/status/logs.php?pkg=coot&arch=loong64.

Please consider the patch I attached.
Add -latomic to LDFLAGS on loong64.
Your opinions are welcome.

Best regards,
Dandan Zhang

-------------- next part --------------
diff -Nru coot-1.1.09+dfsg/debian/rules coot-1.1.09+dfsg/debian/rules
--- coot-1.1.09+dfsg/debian/rules	2025-01-22 08:11:25.000000000 +0000
+++ coot-1.1.09+dfsg/debian/rules	2025-01-22 08:13:31.000000000 +0000
@@ -15,7 +15,7 @@
 endif
 
 # Link with libatomic on riscv64 and mips64el
-ifneq (,$(filter $(DEB_HOST_ARCH),riscv64 mips64el))
+ifneq (,$(filter $(DEB_HOST_ARCH),riscv64 mips64el loong64))
 	export DEB_LDFLAGS_MAINT_APPEND += -Wl,--no-as-needed -latomic -Wl,--as-needed
 endif
 


More information about the debian-science-maintainers mailing list