小鱼 ROS 2 新书上线!点击链接查看, 新书配套视频点击链接查看。
提问前必看的发帖注意事项—— 提问前必看!不符合要求的问题拒绝回答!!
社区使用指南—如何添加标签修改密码
一键安装Cartographer失败
-
[][37.86s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_random_intern[/][37.86s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_strings_inter[-][37.86s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_str_format_in[/][37.86s] -- Installing: /usr/local/stow/absl/lib/libabsl_str_format_internal.[][37.86s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cord_internal[-][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_update_[/][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_functio[|][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_statist[-][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_handle.[-][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_sample_[][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_cordz_update_[/][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_graphcycles_i[][37.87s] -- Installing: /usr/local/stow/absl/lib/libabsl_graphcycles_internal[|][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_kernel_timeou[-][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_synchronizati[/][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_bad_any_cast.[][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_bad_any_cast_[][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_bad_optional_[|][37.87s] -- Installing: /usr/local/stow/absl/lib/libabsl_bad_optional_access.[-][37.87s] -- Installing: /usr/local/stow/absl/lib/pkgconfig/absl_bad_variant_a[-][37.87s] CMD Result:success s.a
Run CMD Task:[catkin_make_isolated --install --use-ninja]
[-][0.00s] CMD Result:code:127Run CMD Task:[sudo chmod -R 777 cartographer_ws]
[-][0.00s] CMD Result:success -
从你提供的日志信息来看,一键安装Cartographer的过程中,前面的ABSL(Abseil)库的安装部分是成功的,但在执行
catkin_make_isolated --install --use-ninja
命令时失败了,返回了错误代码127。错误代码127通常表示命令或程序找不到。这里有几个可能的解决方案和检查步骤:
-
检查Ninja安装:
catkin_make_isolated
命令中使用--use-ninja
选项意味着它依赖于Ninja构建系统。确保Ninja已经正确安装在你的系统上。你可以通过运行ninja --version
来检查它是否已安装。- 如果没有安装Ninja,你可以通过包管理器安装它(例如,在Ubuntu上可以使用
sudo apt-get install ninja-build
)。
-
检查Catkin和ROS环境:
- 确保你的ROS(Robot Operating System)环境已正确设置。这包括设置环境变量如
ROS_DISTRO
和ROS_PACKAGE_PATH
。 - 验证
catkin_make_isolated
命令是否在你的路径中。你可以通过运行which catkin_make_isolated
来检查。
- 确保你的ROS(Robot Operating System)环境已正确设置。这包括设置环境变量如
-
检查Cartographer依赖:
- 确保所有Cartographer的依赖项都已正确安装。Cartographer依赖于许多其他库和工具,如Protobuf, gflags, glog, Ceres Solver等。
- 你可以查看Cartographer的官方安装指南,确保所有依赖项都已安装并配置正确。
-
权限问题:
- 尽管你尝试通过
sudo chmod -R 777 cartographer_ws
修改了工作区的权限,但这通常不是最佳实践。更安全的做法是确保你的用户账户是ROS工作区的所有者,或者在使用sudo
时正确地使用它(例如,直接运行sudo catkin_make_isolated --install --use-ninja
)。
- 尽管你尝试通过
-
查看详细的错误输出:
- 错误代码127通常不提供太多具体信息,但
catkin_make_isolated
可能会在工作空间目录下的logs
文件夹中留下更详细的错误日志。检查这些日志可能会提供更多关于为什么构建失败的线索。
- 错误代码127通常不提供太多具体信息,但
-
清理和重新构建:
- 有时候,完全清理工作空间并从头开始构建可以解决一些看似复杂的问题。你可以尝试删除
build
和devel
文件夹,然后再次运行构建命令。
- 有时候,完全清理工作空间并从头开始构建可以解决一些看似复杂的问题。你可以尝试删除
通过上述步骤,你应该能够诊断并解决安装Cartographer时遇到的问题。如果问题仍然存在,可能需要更详细地检查你的系统配置或寻求社区的帮助。
以上为生成回答,仅供参考~
-