我在我的anaconda环境里安装了ROS-noetic。为此,我使用了由机器人堆栈提供的ROS系统。我正在尝试构建一个ros包(https://github.com/johnkok/ros_odrive)。但是,当我试图构建包时,我会得到以下错误:
/home/anaconda3/envs/rosenv2/bin/../lib/gcc/x86_64-conda-linux-gnu/9.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/anaconda3/envs/rosenv2/lib/libudev.so.1: undefined reference to 'name_to_handle_at@GLIBC_2.14'
/home/anaconda3/envs/rosenv2/bin/../lib/gcc/x86_64-conda-linux-gnu/9.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/anaconda3/envs/rosenv2/lib/libusb-1.0.so: undefined reference to 'memcpy@GLIBC_2.14'
/home/anaconda3/envs/rosenv2/bin/../lib/gcc/x86_64-conda-linux-gnu/9.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/anaconda3/envs/rosenv2/lib/libudev.so.1: undefined reference to 'secure_getenv@GLIBC_2.17'
/home/anaconda3/envs/rosenv2/bin/../lib/gcc/x86_64-conda-linux-gnu/9.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/anaconda3/envs/rosenv2/lib/libudev.so.1: undefined reference to 'getauxval@GLIBC_2.16'
/home/anaconda3/envs/rosenv2/bin/../lib/gcc/x86_64-conda-linux-gnu/9.4.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/anaconda3/envs/rosenv2/lib/libusb-1.0.so: undefined reference to 'clock_gettime@GLIBC_2.17'
collect2: error: ld returned 1 exit status
当我做ldd --version
的时候,我得到了ldd (GNU libc) 2.12
。
对于如何解决这个问题,有什么建议吗?谢谢!
发布于 2021-10-09 15:53:50
我正在使用机器人栈提供的ROS系统。
ROS包是在GLIBC 2.17 (或更新版本)上编译和链接的。它只在GLIBC 2.17 (或更新版本)的系统上工作。
我得到了
ldd (GNU libc) 2.12
您正在尝试在带有GLIBC的系统上使用ROS,这个系统太老了。
如何解决这个问题?
你有几种选择:
compiler)
的码头容器中更新的
https://stackoverflow.com/questions/69473199
复制相似问题