【发布时间】:2021-09-29 12:05:30
【问题描述】:
我用catkin_make编译了一个ros项目,但是失败了。 说明链接库的时候出现了一些问题。
[ 98%] Linking CXX executable /home/kyxz2021/fleet/devel/lib/data_parser/data_parser_node
/lib/x86_64-linux-gnu/libm.so.6: undefined reference to `__strtof128_nan@GLIBC_PRIVATE'
collect2: error: ld returned 1 exit status
我查了一下错误,有人说可能是libm版本和libc版本不一致,但不是这里的问题。
***@ubuntu:~$ ll /lib/x86_64-linux-gnu/libm.so.6
lrwxrwxrwx 1 root root 12 May 16 20:52 /lib/x86_64-linux-gnu/libm.so.6 -> libm-2.23.so
***@ubuntu:~$ ll /lib/x86_64-linux-gnu/libc*
-rwxr-xr-x 1 root root 1868984 Jun 5 2020 /lib/x86_64-linux-gnu/libc-2.23.so*
lrwxrwxrwx 1 root root 14 Feb 11 2016 /lib/x86_64-linux-gnu/libcap.so.2 -> libcap.so.2.24
-rw-r--r-- 1 root root 23128 Oct 23 2015 /lib/x86_64-linux-gnu/libcap.so.2.24
lrwxrwxrwx 1 root root 21 Feb 11 2016 /lib/x86_64-linux-gnu/libcgmanager.so.0 -> libcgmanager.so.0.0.0
-rw-r--r-- 1 root root 141248 Jan 18 2016 /lib/x86_64-linux-gnu/libcgmanager.so.0.0.0
-rw-r--r-- 1 root root 190856 Jun 5 2020 /lib/x86_64-linux-gnu/libcidn-2.23.so
lrwxrwxrwx 1 root root 15 Jun 5 2020 /lib/x86_64-linux-gnu/libcidn.so.1 -> libcidn-2.23.so
lrwxrwxrwx 1 root root 17 Jan 22 2020 /lib/x86_64-linux-gnu/libcom_err.so.2 -> libcom_err.so.2.1
-rw-r--r-- 1 root root 14648 Jan 22 2020 /lib/x86_64-linux-gnu/libcom_err.so.2.1
-rw-r--r-- 1 root root 39224 Jun 5 2020 /lib/x86_64-linux-gnu/libcrypt-2.23.so
-rw-r--r-- 1 root root 2366112 Feb 17 10:21 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
lrwxrwxrwx 1 root root 22 Feb 11 2016 /lib/x86_64-linux-gnu/libcryptsetup.so.4 -> libcryptsetup.so.4.6.0
-rw-r--r-- 1 root root 158920 Sep 6 2017 /lib/x86_64-linux-gnu/libcryptsetup.so.4.6.0
lrwxrwxrwx 1 root root 16 Jun 5 2020 /lib/x86_64-linux-gnu/libcrypt.so.1 -> libcrypt-2.23.so
lrwxrwxrwx 1 root root 12 Jun 5 2020 /lib/x86_64-linux-gnu/libc.so.6 -> libc-2.23.so*
以及 nm -AD /lib/x86_64-linux-gnu/lib{c,m}-2.23.so | 的输出grep __strtof128_nan 如下所示。
***@ubuntu:~$ nm -AD /lib/x86_64-linux-gnu/lib{c,m}-2.23.so | grep __strtof128_nan
/lib/x86_64-linux-gnu/libm-2.23.so: U __strtof128_nan
我不知道如何解决这个问题,如果有人可以帮助我,我将不胜感激。
【问题讨论】:
-
请不要显示文本的图像。而是直接将文本剪切/粘贴到您的问题中。
-
__strtof128_nan@GLIBC_PRIVATE的定义应该在libc-2.23.so中。请编辑您的问题并添加来自nm -AD /lib/x86_64-linux-gnu/lib{c,m}-2.23.so | grep __strtof128_nan的输出?
标签: makefile undefined ros glibc