首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在编译ROS包时解决GLIBC错误

在编译ROS包时解决GLIBC错误
EN

Stack Overflow用户
提问于 2021-10-06 22:05:36
回答 1查看 383关注 0票数 0

我在我的anaconda环境里安装了ROS-noetic。为此,我使用了由机器人堆栈提供的ROS系统。我正在尝试构建一个ros包(https://github.com/johnkok/ros_odrive)。但是,当我试图构建包时,我会得到以下错误:

代码语言:javascript
运行
复制
/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

对于如何解决这个问题,有什么建议吗?谢谢!

EN

Stack Overflow用户

回答已采纳

发布于 2021-10-09 15:53:50

我正在使用机器人栈提供的ROS系统。

ROS包是在GLIBC 2.17 (或更新版本)上编译和链接的。它只在GLIBC 2.17 (或更新版本)的系统上工作。

我得到了ldd (GNU libc) 2.12

您正在尝试在带有GLIBC的系统上使用ROS,这个系统太老了。

如何解决这个问题?

你有几种选择:

compiler)

  • run

  • 将您的操作系统升级到一些不太古老的东西(GLIBC-2.17是在近10年前发布的)

  • 找到一个与操作系统

  • 兼容的从源代码中重新构建系统上的ROS包(如果ROS依赖较新的GLBC特性,或者在一个带有较新GLIBC

的码头容器中更新的

  • ),这可能并不简单。
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69473199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档