1.启动roscore报错:ModuleNotFoundError: No module named ‘defusedxml’
在ROS安装完成,之前已经运行无错的情况下,应该是python版本管理问题,此处输入python,应显示python2的版本;
如果发现不是python2的版本,应对python版本进行管理配置:
// An highlighted block
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
利用上述指令将python2.7加入python列表,再使用:
// An highlighted block
sudo update-alternatives --config python
指令将python版本配置为python2.7
2.若仍然启动roscore时还报错:ModuleNotFoundError: No module named ‘rospkg’
此时先查看是否安装了rospkg,输入下列指令,未报错就说明正常安装:
// An highlighted block
python -c "import rospkg"
此时应该为python3的版本不对,通过下列指令将python3的版本配置为你安装ROS时使用的python3版本
// An highlighted block
sudo update-alternatives --config python3
2.编译ORB-SLAM3 ros版本时出现卡死
打开build_ros.sh文件,将最后一行的make -j,改为make -j4 或更小的数字
3. 编译时出现说没有包rospkg catkin_make等,这里的原因是这些没有使用catkin安装,导致安装在了/usr/lib/python2.7/dist-packages里面,因此在/opt/ros/melodic/lib/python2.7/dist-packages/中根本找不到这些包,处理办法是将这些包复制过去,但是根源的处理办法是在安装时,ros的都要用catkin安装
4. 编译时出现 Error: could not call python function 'rosdep2.rospack.init_rospack_interface
// An highlighted block
sudo rosdep fix-permissions
rosdep update
5.下列软件包有未满足的依赖关系:
libdw-dev : 依赖: libelf-dev 但是它将不会被安装
依赖: libdw1 (= 0.170-0.4) 但是 0.170-0.4ubuntu0.1 正要被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
利用aptitude安装软件包 ,途中会给出解决方案
让保持原来版本 保持就安装不了了,因此选择n,不保持
对他们进行降级,降级后就能安装了
c++: fatal error: Killed signal terminated program cc1plus
编译时出现这个错误 这个错误是内存不足引起的,因此减小线程数即可解决make -j8-> make -j4/j2
7.在arm平台上 要使用arm平台对应的源才能安装ros,
8.orb-slam3 编译时遇到的错误以及解决方法
(1)编译时出现ubuntu本地的sophus包和orb-slam3的包冲突,报错重定义;
解决办法:将orb-slam3里面的包删除,将cmake文件里的包含目录删除,将程序头文件里面的包含改为Ubuntu的sophus头文件,路径在报错信息里面有;
(2)在有两个orb-slam3时,报错ROS包路径错误,让double check ROS包路径;
解决:先echo $ROS_PACKAGE_PATH查看当前ROS包的环境变量,再用unset ROS_PACKAGE_PATH消除当前环境变量,最后将现在需要的环境变量加上
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/ubuntu1/softBag/new_ORB3/Examples_old/ROS/ORB_SLAM3
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/opt/ros/melodic/share
(3)拉取cmake文件时报错:
CMake Error at /usr/share/cmake-3.10/Modules/CMakeFindDependencyMacro.cmake:48 (find_package):
Found package configuration file:
/home/ubuntu1/anaconda3/lib/cmake/Qt5WebKit/Qt5WebKitConfig.cmake
but it set Qt5WebKit_FOUND to FALSE so package "Qt5WebKit" is considered to
be NOT FOUND. Reason given by package:
Qt5WebKit could not be found because dependency is required to have exact
version 5.15.x.
Call Stack (most recent call first):
/usr/lib/x86_64-linux-gnu/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsConfig.cmake:87 (find_dependency)
/usr/lib/cmake/vtk-6.3/Modules/vtkGUISupportQtWebkit.cmake:13 (find_package)
/usr/lib/cmake/vtk-6.3/vtkModuleAPI.cmake:45 (include)
/usr/lib/cmake/vtk-6.3/vtkModuleAPI.cmake:15 (vtk_module_load)
/usr/lib/cmake/vtk-6.3/vtkModuleAPI.cmake:132 (_vtk_module_config_recurse)
/usr/lib/cmake/vtk-6.3/VTKConfig.cmake:80 (vtk_module_config)
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:501 (find_package)
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:656 (find_VTK)
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:847 (find_external_library)
CMakeLists.txt:57 (FIND_PACKAGE)
-- Configuring incomplete, errors occurred!
转载自:https://blog.csdn.net/qq_42946643/article/details/129060321
错误为anaconda安装的qt与本机的qt选择错误,本来应该选择本机qt cmake,错误选到了anaconda的qt,限定我们要寻找的Qt5config.cmake文件的路径,也就是在CMakeLists.txt里添加
SET(CMAKE_PREFIX_PATH "/usr/lib/x86_64-linux-gnu/cmake")
完事再删除build下的所有文件,重新编译。
9.ssh登入虚拟机、板子失败问题
(1)保证账户名和密码正确,账户名一般为ubuntu终端第一个名字,例如:
root@topeet:~
则账户名为root,密码为ubuntu开机登录密码,也可以用passwd命令修改。
(2)ssh配置正确
先确保ssh是否正确开启,通过以下命令查询状态:
service ssh status
再查看ssh和sshd的配置文件
sudo gedit /etc/ssh/sshd_config
将 PermitRootLogin prohibit-password注释掉;
9.Ubuntu 虚拟机磁盘满了清理
(1)卡在 “Starting Gnome Display Manager”
通过ctrl+alt+f1~f6进入命令行,删除一些文件再重启;
(2)虚拟机热键被占用,无法通过ctrl+alt+f1~f6进入命令行
在Vware中编辑热键,将热键基础改成其他的,不能完全删除,删除后就会占用回车等基础热键。
(3)删除/home/.cache下的临时文件,这里有很多临时文件,其中vmware/drag_and_drop是虚拟机和主机之间复制文件的备份,一般都占用了较大空间,可以删除,删除后还要清理回收站。
-
VSCODE 远程时报错 “过程试图写入的管道不存在”
转至,删除下图中的该文件即刻,原因是本地的known_hosts文件记录服务器信息与现服务器的信息冲突了,导致连接失败。
解决方案就是把本地的known_hosts的原服务器信息全部删掉,然后重新连接。
https://blog.csdn.net/qq_47733361/article/details/132356723
-
ros 代码编译后太久不维护 再次编译报错
Running command: “make cmake_check_build_system” in “/home/ubuntu1/vins-mono-catkin_ws/build”
make: /snap/cmake/1329/bin/cmake: Command not found
Makefile:1122: recipe for target ‘cmake_check_build_system’ failed
make: *** [cmake_check_build_system] Error 127
Invoking “make cmake_check_build_system” failed
解决方法:
将devel 和build文件删除后重新编译