1.问题原因
自己在Ubuntu16.04装的Clion打开ROS工程之后,Clion自己会先运行检查代码,这时候报错,在CMakeLists.txt文件中下面这句话Clion报错称找不到Findcatkin.cmake。
find_package(catkin REQUIRED COMPONENTS)
原因在于Clion软件在以快捷方式打开后并没有加载catkin的一些环境,因此上面代码中包含的运行包Clion是找不到的。但是用终端以Clion的安装目录下以./clion.sh
的方式打开Clion是可以的,因为大家在装ROS之后,都会先执行下面一段代码source ~/catkin_ws/devel/setup.bash
,终端会提前加载catkin的环境,所以用终端打开软件后就不会报错了。
2. 解决方法
打开终端,依次执行
cd ~/.local/share/applications/
gedit jetbrains-clion.desktop
将文件中的
Exec="/home/clion-xxxxx/bin/clion.sh" %f
改成
Exec=bash -i -c "/home/clion-xxxxx/bin/clion.sh" %f
保存后退出。
其中-XXX为自己的Clion版本号。
再用快捷方式打开工程,执行File–>Reload Cmake Project 重新加载工程就可以了。