QT+Cmake 构建C++工程,调用PCL库,可调试
环境:ubuntu14.04+openni2+pcl1.8.1+libfreenect2+QT5.9.1
最近开始学习PCL,配置安装环境就不讲了,按照网上的教程就可以,我参考的是这里的:
http://blog.****.net/u013294888/article/details/51244736
配置好环境之后,进入PCL的安装目录(就是刚刚进行Cmake的那个目录),再进入bin/,执行程序:
./pcl_openni2_viewer(确保已经插入kinnect),此时可以看到kinnect采集到的图像,如下图所示:
表示我们的环境配置成功,设备运转正常。
pcl_openni2_viewer是官方提供的使用PCL和openni的例程,可以在PCL库的源码中找到这个例子的源码和CmakeLists.txt文件(在目录pcl/visualization/tools中,源码是openni2_viewer.cpp)。
有了源码,接下来,我们就可以尝试自己构建项目,这里,我直接用了它的源码,尝试构建一个和例子一样的项目。
开发平台:qt5(当然啦,大家也可以直接用cmake,然后make这种方式,不过为了接下来进行调试,我就用qt5了)
现在直接上步骤了
(请确保你已经正确安装CMAKE,并且QT能找到CMAKE,可通过 tools->options->build&run->cmake 查看)
打开QT5,点击 new project,选择Non-Qt Project,创建一个C++项目,如图:
接下来,填写工程名称并选择创建工程的路径,在builg system一栏选择Cmake,然后选择你的kits,一直next,最后点击finish,目前就新建好了一个工程。
像这个样子的:
因为在QT里面,用cmake的方式,暂时不支持在projects一栏直接添加文件,所以,我直接进入工程目录,将openni2_viewer.cpp文件拷贝进去了,这时,在projects一栏看不到这个文件,说明它暂时还没有被添加到工程中,现在,打开CMakeLists.txt,如下所示:
我们将它修改成下面这样:
改完之后,保存,它就将openni2_viewer.cpp引入工程了,并且还引入相关的库(请看上图左侧projects一栏的变化)。打开openni2_viewer.cpp,现在就可以构建你的项目了,可以运行也可以调试。
CMakeLists.txt一般是根据项目配置具体修改的,这里给出的是一个最简单的例子,通用性强,其他的项目可以照着这个模板改就好了。
注:如果想要在运行程序时从控制台获取输入,可点击左侧projects,在run settings 里面勾选 run in ternimal。