Cmake生成Makefile

Posted soyosuyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cmake生成Makefile相关的知识,希望对你有一定的参考价值。

cmake 相比automake 最大的区别是: 步骤没有automake那么多

main.cpp

#include<iostream>
#include"student.h"
using namespace std;
int main()
{
   Student stu;
   stu.set();
   stu.display();
  cout<<"i am soyo"<<endl;
  return 0;
}

student.cpp

#include<iostream>
#include"student.h"
using namespace std;
void Student::display()
{
cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
}
void Student::set()
{
cin>>num>>name>>sex;
}

student.h

#include<iostream>
#include<string>
using namespace std;
class Student
{
   public:
          void set();
          void display();
   private:
          int num;
          string name;
          char sex;
};

cmake过程:

1.建一个CMakeLists.txt文件:(CMakeLists.txt 文件名字要正确,不然无法执行cmake .)

 CMakeLists.txt:

# CMake 最低版本号要求
cmake_minimum_required (VERSION 3.5.1)

# 项目信息
project (main)

# 查找当前目录下的所有源文件
# 并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)

# 指定生成目标
add_executable(main ${DIR_SRCS})

2.cmake .
3. make
4.生成可执行的文件

 

以上是关于Cmake生成Makefile的主要内容,如果未能解决你的问题,请参考以下文章

为啥 CMake 在没有 CMAKE_CXX_FLAGS 的情况下生成 Makefile?

CMake:生成忽略错误的 Unix Makefile

cmake利用toolchain.cmake生成makefile之后,make生成静态库失败问题

cmake中的奇怪字符“â”生成makefile错误

CMake 在生成 Makefile 时生成的路径名太长

20190110-CMake-Makefile