检索(解决安装了Anaconda后catkin_make不能用了,CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):Could not find a package configuration file provided by "serial" with any,Invoking "cmake" failed等等错误解决方案)
报错截图如图
如图我们可以看到我们实际的报错内容为
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "serial" with any
注意观察我标注红色的位置,然后寻找相对应解决方法
目录
一.标红位置为catkinConfig.cmake
如果是catkinConfig.cmake, "serial"然后下面显示那么你就要注意了,你实际上并不是因为python导致的cmake编译不通过,解决方案很简单就是将下面的
serialConfig.cmake
serial-config.cmake
给下载下来,不知道如何下载的话就将我后面的所有指令都执行一遍
sudo apt-get install ros-noetic-jsk-recognition-msgs
sudo apt-get install ros-noetic-grid-map-cv
sudo apt-get install ros-noetic-grid-map-msgs
sudo apt-get install ros-noetic-grid-map-ros
sudo apt-get install ros-noetic-jsk-rviz-plugins
sudo apt-get install libgoogle-glog-dev
sudo apt-get install ros-noetic-serial
二.标红位置为empy.cmake
如个标红位置为empy.cmake,你就要考虑下是不三之前安装了Anaconda后catkin_make就不能用了,如果是的话解决方案如下
在src的上级目录进行这个操作
catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3
其原因以及目的是因为
在ubuntu系统中,存在两个python;python2.7和python3.8(注意这两个版本不可删除,否则OS系统瘫痪);又装了一个anaconda后,出现了第三个版本的python3.9.
因此系统中三个版本python:
python2.7
python3.8
anaconda/lib/bin/python3.9
他们的环境别名是:(/usr/bin中见到的软连接)
python2、python3,python
最近的ROS-noetic中,需要用python3,但无法用anaconda内的python3,因此,这里需要选python3.8,别名是python3。参考这个。
如果编译通过了那就万事大吉,如果没通过可以尝试操作方法一或者使用下面方案,
三.bash环境下:命令框前有bash
如果你的命令框前有
(bash)标识 ,那就说明你处在在bash环境下无法正法编译,那么你只需
用 conda deactivate 来退出bash环境,然后catkin_make就行拉,如果还是不行,请将如下所有指令重复一遍
sudo apt-get install ros-noetic-jsk-recognition-msgs
sudo apt-get install ros-noetic-grid-map-cv
sudo apt-get install ros-noetic-grid-map-msgs
sudo apt-get install ros-noetic-grid-map-ros
sudo apt-get install ros-noetic-jsk-rviz-plugins
sudo apt-get install libgoogle-glog-dev
sudo apt-get install ros-noetic-serial
目前对我来说装了四台系统,这些方式已经能解决我的全部情况了,如果你不可以,可以评论,咱们一起解决