CLion中編譯ROS工程的配置詳細教程

2022-09-21 00:06:09 字數 1775 閱讀 7419

作為一名ros實踐者,之前一直使用帶外掛程式的qt createtor編寫**和編譯。最近被clion華麗的外表、豐富的可配置性和除錯功能所吸引,官網說明clion可以用於編譯ros packet,直接匯入頂層的cmakelists或src資料夾即可。初次使用,卻發程式設計客棧現了一些小問題,需要修改配置解決。

1、啟動方式

官網**clion解壓後,第一次執行/bin資料夾中的clion.sh會在系統中建立快捷方式,可以選擇「鎖定到啟動器」。網上其他的教程會說每次啟動clion要先進入到ros的工作空間下面,執行「source devel/setup.bash」,然後在執行clion.sh。個人感覺這種方法非常繁瑣,可以在點選clion圖示啟動的時候就source系統環境。

編輯圖示啟動檔案:

gedit ~/.local/share/applications/jetbrains-clion.desktop

[desktop entr

version=1.0

type=application

name=clion

icon=/home/zhangzhen/clion-2018.3.1/bin/clion.svg

exec="/home/zhangzhen/clion-2018.3.1/bin/clion.sh" %f

comment=a cross-platform ide for c and c++

categories=development;ide;

terminal=false

startupwmclass=jetbrains-clion

檔案裡面可以看到,大概就是制定了快捷方式的,需要執行的命令,是否啟動終端等配置。我們只需要在每次啟動clion的時候載入一下bash(增加bash -i -c指令)就好了。所以將第六行改動一下,變成下面這個樣子就好了。

[desktoksyxw**ucip entry]

version=1.0

type=application

name=clion

icon=/home/zhangzhen/clion-2018.3.1/bin/clion.svg

exec=bash -i -c "/home/zhangzhen/clion-2018.3.1/bin/clion.sh" %f

comment=a cross-platform ide for c and c++

categories=development;ide;

terminal=false

startupwmclass=jetbraiwww.cppcns.comnsksyxw**uci-clion

2、編譯過程中生成的檔案不是位於build和devel資料夾下

修改settings->build->cmake中的設定,將「cmake options」一欄修改為「-dcatkin_devel_prefix:path=/home/user_name/workspace_name/devel」;將"generation path"一欄修改為「/homeuser_name/workspace_name/build」。如下:

3、編譯使用的cmake版本

預設情況下,clion編譯使用的cmake是其內建的乙個版本,而使用這個版本的cmake進行編譯時會報出一些莫名其妙的錯誤,命令列中catkin_make明明可以正常編譯,而這裡就是會失敗。解決這個問題的辦法就是將clion中的cmake更換為系統中的cmake,具體設定在settings->build->toolchains,可以看到其中的cmake預設為bundled,我們需要手動指定為系統中的cmake,具體看下圖:

總結

CLion中編譯ROS工程的配置

作為一名ros實踐者,之前一直使用帶外掛程式的qt createtor編寫 和編譯。最近被clion華麗的外表 豐富的可配置性和除錯功能所吸引,官網說明clion可以用於編譯ros packet,直接匯入頂層的cmakelists或src資料夾即可。初次使用,卻發現了一些小問題,需要修改配置解決。1...

在Clion中配置ROS工程

使用clion編譯執行ros工程,clion安裝破解過程自行解決 clion終端啟動 sudo gedit bashrc 在bashrc檔案中加入 export path home jjy solftware clion 2018.2.6 bin path 位址根據自己改 儲存退出 source b...

clion建立乙個ros工程

建立乙個rosclion目錄 cd rosclion mkdir p ros workspace src cd ros workspace catkin make 在src中建立package cd src catkin create pkg my package roscpp rospy std ...