Chinaunix首页 | 论坛 | 博客
  • 博客访问: 107597
  • 博文数量: 29
  • 博客积分: 447
  • 博客等级: 下士
  • 技术积分: 414
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-05 23:03
个人简介

整天捣鼓嵌入式,兼职搞搞iOS,这么折腾为了啥?都是为了俺的娃!

文章分类

分类: C/C++

2011-08-27 22:15:19

 

(一)   chello工程目录如下:

chello

  |-----build

  |-----test.cmain函数所在文件,调用hello.csayhello()函数)

|-----src

      |---hello.c (需要调用myhello.chellohello()函数)

      |---hello.h

      |---subsrc

          |---myhello.c

          |---myhello.h

          |---test_myhello.c (测试例程文件,也含有main函数,调用hellohello()函数)

以上的工程没有任何实际应用意义,各函数只是printf一些标识信息。所以在这里不粘贴源代码,请各位童鞋见谅。

(二)   文件依赖关系说明:

工程主目录为chellotest.c依赖于hello.c,hello.c又依赖于myhello.c.同时在src/subsrc/下还有一个子工程,用于测试myhello.c。这样形成较为复杂的依赖关系,便于说明CMake构建工程的步骤。

工程目录及有源码的子目录下创建CMakeLists.txt文件。创建完成后的目录如下:

chello

  |-----build

  |-----test.cmain函数所在文件)

  |----CMakeLists.txt(此文件对应图1说明)

|-----src

      |---hello.c

      |---hello.h

           |--- CMakeLists.txt(此文件对应图2说明)

      |---subsrc

          |---myhello.c

          |---myhello.h

          |---test_myhello.c(测试例程文件,也含有main函数)

                     |--- CMakeLists.txt(此文件对应图3说明)

(三)   执行cmake:

编辑好CMakeLists.txt后,进入到build目录,此时注意观察build文件夹的变化

,执行如下指令

#cmake ..

#make

即可在build目录生成指定的目标文件了。

 

(四)   总结:

从上面实践的过程可以看出:如果在没有IDE的情况构建工程,cmake要比autotools简单多了。对于开发人员来讲,利用cmake可以很清晰明了的控制工程每一个细节。并且cmake是个开源的跨平台构建工程,支持C,C++,Java等语言。这也正是KDevelop4会摒弃复杂难懂的autotools而热烈拥抱cmake的重要原因了。

阅读(2950) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~