Qtcreator编写ros程序:无法启动进程"catkin_make" -DCMAKE_BUILD_TYPE=Debug
利用Qtcreator编写ROS程序,你必须先进行相应的配置:在启动qtcreator环境时先把ros环境添加进。(即~/.bashrc文件)
1 版本问题 QT4 与 QT5
sudo gedit ~/.local/share/applications/DigiaQtOpenSource-qtcreator.desktop (qt5 默认安装的路径下)
当打开文件是空时,关闭。按照路径打开文件
cd ~/.local/share/applications/
gedit ~/.local/share/applications/DigiaQt(+tab 补齐查看)
我装5.2 run版是:sudo gedit ~/.local/share/applications/DigiaQtOpenSource-qtcreator.desktop (qt5 默认安装的路径下)
5.4在线版是:sudo gedit ~/.local/share/applications/DigiaQt-qtcreator-community.desktop
命令安装的QT4: sudo gedit /usr/share/applications/DigiaQtOpenSource-qtcreator.desktop
~~~~~~~~~~~~~~~~~~~~~~~~~
ps:总之具体desktop文件你依据路径先找一下该文件在哪///
~~~~~~~~~
修改 Exec 变量一行,在中间添加 bash -i -c 即改为 Exec=bash -i -c /home/viki/Qt5.2.0/Tools/QtCreator/bin/qtcreator ,保存并退出。添加 bash -i -c 是为了在通过快捷方式启动Qt Creator的同时加载ROS环境变量(ROS环境变量加载脚本配置在 ~/.bashrc 文件内)
~~~~~~~~~~~~~~~~~~~~
QT5的安装:
QT5的版本为.run文件:添加可执行权限
http://qt-project.org/downloads
QT5的卸载:
进入路径。执行MaintenanceTool。。
agv@agv:~/Qt$ sudo ./MaintenanceTool
QT5 ROS工程参照:
相应的配置参考以下说明:
http://my.phirobot.com/blog/2013-12-ros_ide_qtcreator.html
注意:修改启动时自动加载ros的配置环境。
gedit ~/.local/share/applications/DigiaQtOpenSource-qtcreator.desktop (qt5)
2.导入文件
2.1 以Cmakelist.txt形式导入文件。
编译后自动有相应的可执行文件生成。
编译路径选择对话框。 Browse 将路径修改为 ~/catkin_ws/build/ 的路径,如下图:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
Arguments 一栏填入 -DCMAKE_BUILD_TYPE=Debug
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
然后点击 Run CMake 即可开始编译
如果没有错误信息,则点击 Finish 完成,在 Edit 界面可以看到工程结构,可以开始编辑工程了
2.2 以已存在文件形式导入文件。
手动配置的形式。编译路径。
与终端输出有关设置
工程配置qt4。5 类似:
~~~~~~
mark : find_package (Qt4)出错
详见 http://askubuntu.com/questions/349430/compiling-code-that-depends-on-qt4-with-qt5-installed
Compiling code that depends on QT4 with QT5 installed
-- Found unsuitable Qt version "5.0.2" from /usr/bin/qmake
Even though I am using
# find and set up qt
find_package (Qt4)
~~~~~~~~~~
The solution was to add the following to my CMakeLists.txt
set(QT_QMAKE_EXECUTABLE /usr/bin/qmake-qt4)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。