美文网首页
001.写一个cmake版的hello word

001.写一个cmake版的hello word

作者: tonytalks | 来源:发表于2017-11-08 15:57 被阅读0次

    网上的一些cmake教程都是一开始就要介绍一大堆cmake命令,然后再介绍如何写。像我这样的急性子,还没看完命令介绍,就想把页面关了。所以这里我按我自己的学习过程,看能不能整理一个小教程。

    关于cmake是啥我就不介绍了,能在网上搜索cmake的一般都大概知道它是干啥的,今天的文章就来写一个cmake版的hello world。

    首先我们准备基本的开发环境(假定你用的是windows系统):

    1. 安装msys2,http://www.msys2.org/
    2. 安装必要的开发工具
      pacman -S gcc
      pacman -S cmake
    

    PS:因为我们要学习的是开源工具,在windows系统下想把开源世界里的工具用好,最好用我给你准备的这个环境。虽然cmake也支持VS,但我不太推荐使用,没有原因。

    假设我们已经有了一个main.c,现在想把它编成一个可执行程序,我们看看这个cmake怎么写。

    开始写cmake的hello world:

    1. 先在你的main.c目录下新建一个CMakeLists.txt文件(文件的名字大小写无所谓的,不过一般用cmake的项目都是这样写的)。
    2. 打开这个文件,输入:
    add_executable(myapp
        main.c)
    
    1. 打开msys2,并切到你的程序目录下,执行:
    cmake .
    cmake --build .
    
    1. 不出意外的话,你会编出来一个myapp.exe来。

    这里咱们就用到一个cmake的命令:

    • add_executable 编译一个可执行的程序。一般的用法就是咱们写的这样,第一个是要编译出来的可执行程序的名字,后面跟着所有源文件,如果你有2个以上的源文件,可以写成:
    add_executable(myapp
        other.c
        main.c)
    

    编译完成后,你会看到你的根目录下生成了一大堆乱七八糟的东西,一般的项目都会将这些生成的东西单独放在一个文件夹里,所以我们可以把上面的第三步改成这样:

    mkdir build
    cd build
    cmake ..
    cmake --build .
    

    这样所有生成的文件就都放在build目录下了,你自己的目录则是非常的干净了。

    done.

    PS 附赠一个同样的Makefile,可以自己对比一下:

    myapp: main.c
      gcc main.c -o myapp
    

    相关文章

      网友评论

          本文标题:001.写一个cmake版的hello word

          本文链接:https://www.haomeiwen.com/subject/apcymxtx.html