⽤cmake将源代码编译成可运⾏的⼯程项⽬
⽹上下载的完整源代码,⽐如《深⼊理解OpenCV:实⽤计算机视觉项⽬解析》,想要⽤来学习,⾸先得把源码编译到⾃⼰使⽤的平台上,⽐如我的是VS2010。
⼀般源代码给出的是 C++ Source、 C/C++ Header ⽂件,以及CmakeLists ⽂件。CmakeLists ⽂件就是⽤来交叉编译的。对交叉编译不太懂,我的理解是把这些⽂件组织成某个平台的⼯程项⽬,可以直接在该平台上运⾏,如果要换平台的话,把这些源码再编译成另⼀个平台的⼯程项⽬,在那个平台上直接⽤。
所以我安装了Cmake 2.8, ⽽且是GUI类型的
cmake如何使用
以该书源码中的第六章为例,把源码转换成可以运⾏的⼯程项⽬。
打开每⼀章节,都有⼀个readme⽂件,是这样的:
使⽤Cmake 来Building the project 的具体步骤,不过是从命令⾏输⼊的。我直接使⽤cmake-gui 更加简单。
1. 双击打开cmake-gui, 在最上⾯两⾏指定⽂件路径,第⼀⾏是源码所在路径,第⼆⾏是我要把新建的⼯程放在那⾥的路径。
然后点左下⾓的 Configure.
2.此时会弹出⼀个对话框,指定 generator 和 compilers 。会⾃动检测电脑上已经安装的generator,我的就是VS2010,并且指定了该IDE默认的编译器。
点击Finish.
3. 等进度条结束后(最下⾯的框中出现了Confuguring done),出现了红⾊部分.
前⾯四⾏不明⽩是指什么,最后⼀⾏指的是我安装的opencv 库的路径,这⾥要改成⾃⼰的路径,我的是:D:/opencv/build
4.再点Configure,出现了以下对话框。提⽰opencv 库的路径是对的。
5.点击左下⾓的 Generate, 最后出现 Generating done. 这样就结束了。
6.到⾃⼰指定的⼯程项⽬放置的⽂件夹下,已经出现了VS2010中的 Solution和Project ⽂件。
⽤VS2010打开 Solution ⽂件,这个⼯程有好⼏个Project, 终于到⼀个main() 函数,visualize_annotations.cpp 把该project设为启动项,运⾏不报错,但是什么都没有,看来得研究这个⼯程是⼲什么⽤的。
先把步骤记录在这⾥,等搞清楚了再来修改纠错。