在 CLion 中设置 ROS 包

Setting up ROS package in CLion

我正在使用 CLion (C++ IDE) 编辑 ROS 包。我能够通过打开 CMakeLists.txt 文件来打开一个包。但是,我得到一个错误,

"FATAL_ERROR "find_package(catkin) failed. catkin was neither found in the workspace nor in the CMAKE_PREFIX_PATH. One reason may be that no ROS setup.sh was sourced before"

如何解决这个问题?在更改代码后,我是否能够 make CLion 中的项目(如果是,我该怎么做),还是必须 catkin_make 在单独的终端中?

试试这个(Linux):

  1. 打开命令行

  2. 运行 catkin_make 在您的包裹上。

  3. source 你的 catkin_workspace/devel/setup.bash 文件例如来源 ~/my_dev_folder/catkin_ws/devel/setup.bash

  4. [CLion 安装目录]/bin/clion.sh 启动 CLion,例如cd ~/Downloads/clion-1.2.4/bin && ./clion.sh

然后,CLion 应该通过 setup.bash 文件设置的本地环境变量,开始了解您的 catkin 工作区中的包。

要补充 WillC 建议的内容,您还可以修改桌面条目以从 bash 启动应用程序,而不是手动启动。

为此,请编辑位于

的桌面文件
~/.local/share/applications/jetbrains-clion.desktop

将包含Exec=的行修改为

Exec=bash -i -c "/INSTALL_LOCATION/clion-2016.3.2/bin/clion.sh" %f

为了补充 WillC 的建议,CLion 默认重新加载最后一次 cmake 编译结果。

但是,如果您在最后一次尝试中找不到 catkin.cmake,即使您找到 devel/setup.bash 并打开 CLion,您也找不到 catkin.cmake .

您应该单击文件 --> 重新加载 Cmake 项目,您应该会得到正确的结果。