CLion中編譯ROS工程的配置詳細(xì)教程
作為一名ROS實(shí)踐者,之前一直使用帶插件的QT createtor編寫代碼和編譯。最近被CLion華麗的外表、豐富的可配置性和調(diào)試功能所吸引,官網(wǎng)說明CLion可以用于編譯ROS packet,直接導(dǎo)入頂層的CMakeLists或src文件夾即可。初次使用,卻發(fā)現(xiàn)了一些小問題,需要修改配置解決。
1、啟動(dòng)方式
官網(wǎng)下載clion解壓后,第一次運(yùn)行/bin文件夾中的clion.sh會(huì)在系統(tǒng)中創(chuàng)建快捷方式,可以選擇“鎖定到啟動(dòng)器”。網(wǎng)上其他的教程會(huì)說每次啟動(dòng)clion要先進(jìn)入到ROS的工作空間下面,執(zhí)行“source devel/setup.bash”,然后在運(yùn)行clion.sh。個(gè)人感覺這種方法非常繁瑣,可以在點(diǎn)擊clion圖標(biāo)啟動(dòng)的時(shí)候就source系統(tǒng)環(huán)境。
編輯圖標(biāo)啟動(dòng)文件:
gedit ~/.local/share/applications/jetbrains-clion.desktop
[Desktop Entry] 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
文件里面可以看到,大概就是制定了快捷方式的圖片,需要運(yùn)行的命令,是否啟動(dòng)終端等配置。我們只需要在每次啟動(dòng)clion的時(shí)候加載一下bash(增加bash -i -c指令)就好了。所以將第六行改動(dòng)一下,變成下面這個(gè)樣子就好了。
[Desktop 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=jetbrains-clion
2、編譯過程中生成的文件不是位于build和devel文件夾下
修改Settings->Build->CMake中的設(shè)置,將“CMake options”一欄修改為“-DCATKIN_DEVEL_PREFIX:PATH=/home/user_name/workspace_name/devel”;將"Generation path"一欄修改為“/homeuser_name/workspace_name/build”。如下:

3、編譯使用的cmake版本
默認(rèn)情況下,CLion編譯使用的CMake是其內(nèi)置的一個(gè)版本,而使用這個(gè)版本的CMake進(jìn)行編譯時(shí)會(huì)報(bào)出一些莫名其妙的錯(cuò)誤,命令行中catkin_make明明可以正常編譯,而這里就是會(huì)失敗。解決這個(gè)問題的辦法就是將CLion中的CMake更換為系統(tǒng)中的CMake,具體設(shè)置在Settings->Build->Toolchains,可以看到其中的CMake默認(rèn)為Bundled,我們需要手動(dòng)指定為系統(tǒng)中的CMake,具體看下圖:

總結(jié)
到此這篇關(guān)于CLion中編譯ROS工程的配置的文章就介紹到這了,更多相關(guān)CLion編譯ROS工程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
快速解決eclipse中注釋的代碼依然會(huì)執(zhí)行的問題
下面小編就為大家?guī)硪黄焖俳鉀Qeclipse中注釋的代碼依然會(huì)執(zhí)行的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12
詳解idea中Git的Stash Changes和UnStash Changes用法
這篇文章主要介紹了idea中Git的Stash Changes和UnStash Changes用法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
回車和換行有什么區(qū)別?我們平時(shí)按下的Enter鍵是回車還是換行
如果用過機(jī)械打字機(jī),就知道回車和換行的區(qū)別了。換行就是把滾筒卷一格,不改變水平位置?;剀嚲褪前阉轿恢脧?fù)位,不卷動(dòng)滾筒2011-03-03
調(diào)試JavaScript/VBScript腳本程序(IE篇)
JavaScript/VB Script腳本程序一般有兩種執(zhí)行方式,一種是嵌入在宿主程序里面執(zhí)行,比如在IE瀏覽器里面執(zhí)行;另外一種,在資源管理器里面雙擊執(zhí)行(雖然還是通過另外一個(gè)程序解釋執(zhí)行,但是給人的感覺畢竟是直接運(yùn)行)。2009-09-09
Jar包一鍵重啟的Shell腳本及新服務(wù)器部署的一些經(jīng)驗(yàn)分享
這篇文章主要介紹了Jar包一鍵重啟的Shell腳本及新服務(wù)器部署的一些經(jīng)驗(yàn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
從console.log說起(console.log詳細(xì)介紹)
console.log,作為一個(gè)前端開發(fā)者,可能每天都會(huì)用它來分析調(diào)試,但這個(gè)簡單函數(shù)背后不簡單那一面,這篇文章就為大家介紹一下2017-09-09
從0到1搭建后端架構(gòu)的演進(jìn)(MVC,服務(wù)拆分,微服務(wù),領(lǐng)域驅(qū)動(dòng))
來騰訊之前在前公司做了3年的后端開發(fā),經(jīng)歷一款SaaS產(chǎn)品從0到10(還沒有到100, 哈哈哈)的過程,3年間后端的架構(gòu)逐步演變,在微服務(wù)的實(shí)踐過程中遇到的問題也越來越多,在這里總結(jié)下2021-08-08

