admin管理员组文章数量:1530040
ROS报错
报错1:roscore报错
[ERROR] [1685197203.713679712]: [registerPublisher] Failed to contact master at [localhost:11311]. Retrying...
执行ROS
命令出错,因为忘记执行roscore
报错2:roslaunch调用报错
RLException: [irataus.launch] is neither a launch file in package [ratslam_ros] nor is [ratslam_ros] a launch file name
The traceback for the exception was written to the log file
执行ROS
命令出错,因为没有source devel/setup.bash
报错3:安装ROS工具报错
p@p:~/ROS/tranfrom$ sudo apt install ros-noetic-tf2-tools
[sudo] password for p:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package ros-noetic-tf2-tools
- 盲目的复制了下载命令,没有更改命令中的
ROS
版本。更换位对应的ROS
版本即可。如果不是,换源尝试。 - 如果是非
ROS
的安装包错误,比如无法定位软件包 libmrpt-vision-dev
这种情况一般也是安装包名字错了,我们可以在当前环境下搜索下关于mrpt
的包
apt search mrpt # mrpt 改为lib后面的包名
# 下面给出了部分的搜索结果
libmrpt-opengl1.5/bionic 1:1.5.5-1 amd64
Mobile Robot Programming Toolkit - opengl library
libmrpt-slam1.5/bionic 1:1.5.5-1 amd64
Mobile Robot Programming Toolkit - slam library
libmrpt-vision1.5/bionic 1:1.5.5-1 amd64 # 很明显libmrpt-vision1.5就是我们要找的包
Mobile Robot Programming Toolkit - vision library
报错4 :rosbag录制报错
p@p:~$ rosbag record -a -o bag/haa.bag
[ INFO] [1690294610.801329505]: Subscribing to /turtle1/color_sensor
[ERROR] [1690294610.802878010]: Error writing: Error opening file: bag/haa_2023-07-25-20-16-50.bag.active
使用录制命令报错如下,原因
- 文件写错了
- 当前文件下没有bag文件,要么写绝对路径,要么在有bag文件的文件夹打开终端。
报错5 :rospack找不到ROS功能包
rospack found package "ORB_SLAM2" at "", but the currentdirectory is "/home/xxx/ORB_SLAM2-master/Examples/ROS/ORB_SLAM2
- 报错原因
rospack found package
指出这个报错的本质是rospack find ROS功能包
失败,找不到这个功能包,解决办法就是把功能包的路径加入到功能包路径${ROS_PACKAGE_PATH}
,然后再次编译即可成功(如果还是报同样的错,那就是路径不对,比如我这里一直报错因为home
前面/
忘打了)。
- 解决方法:
# 第一步 打开bashrc文件
1 gedit ~/.bashrc
# 第二步 然后在最后加上下面这句(相应功能包的位置,最好是pwd然后复制过来)
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/xxx/ORB_SLAM2/Examples/ROS
# 第三步 刷新
source ~/.bashrc
# 第四步 验证修改
echo ${ROS_PACKAGE_PATH} # 查看ROS包当前路径
# 第五步 也可以直接搜索
p@p: rospack list | grep ORB_SLAM2 # 直接查找ROS包ORB_SLAM2 这里直接填要找的包名
ORB_SLAM2 /home/p/ORB_SLAM2-master/Examples/ROS/ORB_SLAM2
报错6:rospack调用失败
Failed to invoke rospack to get compile flags for package 'ORB_SLAM2'. Look above for errors from rospack itself. Aborting. Please fix the broken dependency!
上面的报错说明使用rospack
获取软件包信息时,rospack
本身也遇到了错误,因此无法继续进行操作。这可能是由于系统环境或ROS
配置出现问题导致的。
- 解决办法
$ sudo rosdep fix-permissions # 修复ROS软件包安装过程中可能出现的权限问题
$ rosdep update # 更新ROS的依赖关系数据库
报错7:roscore失败
RLException: Unable to contact my own server at [http://192.168.0.136:44343/].
This usually means that the network is not configured properly.
A common cause is that the machine cannot connect to itself. Please check
for errors by running:
ping 192.168.0.136
For more tips, please see
http://wiki.ros/ROS/NetworkSetup
The traceback for the exception was written to the log file
这里是使用了别人提供的虚拟机环境,这个虚拟机被设置为从机(bashrc
中查看),把下面两行注释即可
export ROS_MASTER_URI = “xxx”
export ROS_HOSTNAME=192.168.0.136
报错8:编译多个功能包失败(存在依赖)
利用imu_utils
进行imu
的标定时,有两个功能包,直接编译会报错。
创建一个ROS
空间,把两个ROS
包放进去,然后catkin_make
.如果这样做的话,大概率会报下面的错误。本质就是imu_utils
依赖于code_utils
这个包,但实际上我们之前没有按照那个包,就会报下面的错,其实可以在catkin_make
之前显示的告诉它路径,或者就是先编译成功code_utils
,再编译imu_utils
(编译完一个再把另一个放进去)。
-- +++ processing catkin package: 'imu_utils'
-- ==> add_subdirectory(imu_utils)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Could NOT find code_utils (missing: code_utils_DIR)
-- Could not find the required component 'code_utils'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "code_utils" with
any of the following names:
code_utilsConfig.cmake
code_utils-config.cmake
Add the installation prefix of "code_utils" to CMAKE_PREFIX_PATH or set
"code_utils_DIR" to a directory containing one of the above files. If
"code_utils" provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
imu_utils/CMakeLists.txt:13 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/pj/pj/vio_with_only_eigen/imu_allan/build/CMakeFiles/CMakeOutput.log".
See also "/home/pj/pj/vio_with_only_eigen/imu_allan/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed
报错9:找不到glog.so
动态库文件
报错显示没找到glog.so
动态库文件,但是这个环境前两天刚装的,所以必然不是这个问题
make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libglog.so', needed by '/home/pj/pj/vio_with_only_eigen/imu_allan/devel/lib/libpnp.so'. Stop.
make[2]: *** Waiting for unfinished jobs....
[ 92%] Building CXX object code_utils/CMakeFiles/pnp.dir/src/cv_utils/pnp/nonlinearpnp.cpp.o
make[1]: *** [CMakeFiles/Makefile2:804: code_utils/CMakeFiles/pnp.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Invoking "make -j2 -l2" failed
locate
下发现,库文件存在,但上面找的不是这个
pj@pj:~$ locate glog | grep so
...
/usr/lib/x86_64-linux-gnu/libglog.so.0
/usr/lib/x86_64-linux-gnu/libglog.so.0.0.0
libglog.so
和 libglog.so.0
,所以我们把这两个软链接起来就能解决问题
sudo ln -s /usr/lib/x86_64-linux-gnu/libglog.so.0 /usr/lib/x86_64-linux-gnu/libglog.so
本文标签: MasterContactfailedRetryinglocalhost
版权声明:本文标题:Failed to contact master at [localhost:11311]. Retrying... 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1726639872a1079523.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论