在源環(huán)境中啟動CLion
需要告知CLion ROS特定的環(huán)境變量。通過運行來源工作空間時,將在當前shell中檢索這些變量
source ./devel/setup.bash
為CLion提供ROS環(huán)境變量的最簡單方法是從同一個shell啟動IDE。在獲取工作空間后,您可以鍵入同一終端:
在CLion中打開一個ROS項目
在源環(huán)境中啟動CLion后,執(zhí)行以下操作之一以打開ROS項目:
- 單擊文件|打開并選擇ROS工作區(qū)的src目錄中的CMakeLists.txt,然后選擇Open as Project。
- 單擊文件|來自Sources的新CMake項目,并選擇工作區(qū)的src目錄以從中導(dǎo)入項目。
該CMake的工具窗口會顯示該項目加載的狀態(tài):

設(shè)置catkin工作空間的構(gòu)建路徑
默認情況下,CLion將構(gòu)建輸出放在自動創(chuàng)建的cmake-build-debug或cmake-build-release目錄中。對于ROS開發(fā),這意味著您將在CLion和運行的控制臺中擁有兩個不同的版本catkin_make。
要在IDE和控制臺上進行單一構(gòu)建,需要將CLion構(gòu)建路徑設(shè)置為catkin工作區(qū)目錄。為此,請轉(zhuǎn)到文件|設(shè)置Ctrl+Alt+S|構(gòu)建,執(zhí)行,部署|CMake并更改兩個字段:
- 在生成路徑中,設(shè)置workspace_folder/build。
- 在CMake選項中,添加-DCATKIN_DEVEL_PREFIX:PATH=workspace_folder/devel。

使用啟動文件
您可以在CLion中將ROS節(jié)點作為常規(guī)應(yīng)用程序運行和調(diào)試。
啟動文件無法直接執(zhí)行,但您可以使用XML語法突出顯示和完成編輯它們,并將調(diào)試器附加到正在運行的節(jié)點。
將調(diào)試器附加到正在運行的節(jié)點
1、從命令行運行.launch文件。例如
您可以通過該rosnode list命令檢查當前運行的節(jié)點列表。在我們的示例中,列表將包含talker和listener:

2、呼叫運行|從主菜單附加到處理或按Ctrl+Alt+F5。
3、通過其PID或名稱連接到所需節(jié)點:

示例:創(chuàng)建基本ROS節(jié)點,在CLion中編輯并運行它
在這個例子中,我們將創(chuàng)建一個簡單的ROS包,編輯源代碼,并從CLion運行節(jié)點。我們將在Ubuntu 18.04上使用ROS Melodic,并在ROS wiki上使用編寫簡單發(fā)布者和訂閱者(C ++)教程的基本發(fā)布者節(jié)點。
創(chuàng)建一個基本的ROS包
創(chuàng)建和構(gòu)建ROS工作區(qū):
mkdir -p ros_workspace/srccd ros_workspace
catkin_make
在工作區(qū)中,創(chuàng)建一個名為my_package的包:
cd src
catkin_create_pkg my_package roscpp rospy std_msgs
啟動CLION
來源工作區(qū):
cd ../../../source ./devel/setup.bash
并在同一終端啟動CLion
sh /opt/clion-2018.2/bin/clion.sh
在CLion中打開包作為項目
在CLion中,轉(zhuǎn)到File |打開并選擇位于包文件夾內(nèi)的CMakeLists.txt文件,然后選擇將其作為項目打開:

添加源文件并編輯CMakeLists.txt
向項目添加新的源文件:右鍵單擊Project樹中的src,選擇New |C / C ++源文件并將其命名為my_package.cpp。
將整個talker.cpp文件從Publisher和Subscriber教程復(fù)制到my_package.cpp中。
新創(chuàng)建的源添加到的CMakeLists.txt和鏈接其對應(yīng)程序庫:
add_executable(my_package src/my_package.cpp)
target_link_libraries(my_package ${catkin_LIBRARIES})
之后,重新加載CMake項目,并注意運行/調(diào)試配置列表中的my_package:

運行ROS節(jié)點
1、在從CLion運行節(jié)點之前,在新終端中打開ROS主站:
2、在CLion,運行
的my_package配置。運行工具窗口將顯示節(jié)點輸出:

3、在單獨的終端中,檢查當前活動的ROS主題。如果我們打印消息chatter,輸出將類似于我們在CLion中看到的內(nèi)容:

現(xiàn)在,如果我們
在CLion中停止應(yīng)用程序,該rostopic echo /chatter命令將沒有輸出。
總結(jié)
到此這篇關(guān)于Clion ROS開發(fā)環(huán)境設(shè)置技巧的文章就介紹到這了,更多相關(guān)Clion ROS開發(fā)環(huán)境設(shè)置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- CLion中編譯ROS工程的配置詳細教程
- 如何使用clion中配置ROS工程
- 詳解ubuntu20.04下CLion2020.1.3安裝配置ROS過程說明
- 教你Clion調(diào)試ROS包的方法