ImportError: ../lib/libstdc++.so.6: version `GLIBCXX_3.4.30‘ not fo
·
导入rclpy时,缺少所需版本的libstdc++库。通常情况下,这是由于系统上的libstdc++版本与ROS所需的版本不匹配导致的。
-
从conda安装libstdc++:
libstdc++库:conda install libstdcxx-ng -
验证版本:
确认安装后的版本满足要求,运行以下命令检查版本:strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX应该能够看到
GLIBCXX_3.4.30。 -
创建符号链接:
如果升级库没有解决问题,可以尝试创建符号链接以指向正确的库文件。例如:ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /home/hee/miniconda3/envs/py/lib/libstdc++.so.6 -
使用conda创建隔离环境:
确保ROS和其他包在隔离的conda环境中,避免库版本冲突:conda create -n ros_env python=3.10.3 conda activate ros_env conda install libstdcxx-ng pip install rclpy python3
在里面可以正常导入
更多推荐
所有评论(0)