zoukankan      html  css  js  c++  java
  • cmake学习

    使用cMake的目的是把.cpp源文件编译为可执行程序。

    1.使用cmake要建立名称为CMakeLists.txt的文本文件,并且把它放在与.cpp文件的同级目录里面。

    例1:Hello World

    源代码只有一个文件HelloWorld.cpp:

    #include<iostream>

    int main(int argc, char *argv[]) //argc是命令行总的参数个数,argv[]是argc个参数,其中第0个参数是程序的全名,
    { //以后的参数命令行后面跟的用户输入的参数,char *argv[]是一个字符数组,其大小是int argc,主要用于命令行参数argv[]参数,
    //数组里每个元素代表一个参数;
    std::cout << "Hello World!" << std::endl;
    return 0;
    }

    .txt文本文件的内容如下:

    cmake_minimum_required(VERSION 2.8.9)
    project (hello)
    add_executable(hello helloworld.cpp)

    第一行用于指定cmake最低版本 
    第二行指定项目名称(这个名称是任意的) 
    第三行指定编译一个可执行文件,hello是第一个参数,表示生成可执行文件的文件名(这个文件名也是任意的),第二个参数helloworld.cpp则用于指定源文件。

    2.如果您电脑上已经安装了cmake,那么我们就已经万事具备了。 
    用cmake生成Makefile文件:

    cmake命令后边跟的就是CMakelist.txt所在的目录,这个目录不必是当前目录,你也可以新建一个build目录或者其他名字的目录来生成build文件,实际项目中也都是这么做的,这样代码会很干净也便于git管理。

    进入windows命令行,首先把目录切换到.cpp源文件所在和CMakeLists.txt文件所在的目录,然乎输入:cmake .(注意:是输入cmake+空格+.)意思是在当前目录用cmake生成Makefile文件。通过这一步我们发现,当前目录下已经多出了几个文件,特别是Makefile文件:

    3.make编译程序,编译成功。(这一步总是出错!!!)

  • 相关阅读:
    LightOJ 1132 Summing up Powers(矩阵快速幂)
    hdu 3804 Query on a tree (树链剖分+线段树)
    LightOJ 1052 String Growth && uva 12045 Fun with Strings (矩阵快速幂)
    uva 12304 2D Geometry 110 in 1! (Geometry)
    LA 3263 That Nice Euler Circuit (2D Geometry)
    2013 SCAUCPC Summary
    poj 3321 Apple Tree (Binary Index Tree)
    uva 11796 Dog Distance (几何+模拟)
    uva 11178 Morley's Theorem (2D Geometry)
    动手动脑
  • 原文地址:https://www.cnblogs.com/yibeimingyue/p/9929309.html
Copyright © 2011-2022 走看看