关于cmake、make、make install

原博客:https://blog.csdn.net/u012686154/article/details/88733599

如果经常在Linux系统下面与C、C++文件打交道的话,一定经常遇到四/五步走:

mkdir build
cd build
cmake ..
make
// 如果是安装依赖库的时候会用到
make install
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

前两步并不难理解,就是想把对应项目的编译文件放在build目录下,这样便于管理。如果要传送源文件,可以直接删除build文件夹。

编写程序的主要步骤

  1. Edit: 使用编辑器编写源代码,如.c.cc.cpp等文件。
  2. Compile: 使用编译器编译源代码生成目标文件,如.o.a(Linux下静态库),.so(Linux下共享库)等文件。
  3. Link: 使用连接器链接目标代码生成可执行文件,如.exe(Window),.out(Unix)等文件。

cmake

通过编写cmakelist文件,自动生成makefile。

make

make可以用来批处理.c.cpp文件的,它从makefile中读取相应指令,然后编译。

make install

将 make 生成的文件安装到系统的对应目录中,比如从github上下载下来一个依赖库的安装包,解压后经过上面几步,该依赖库的对应头文件和库文件就安装到系统中了。

一般来说,大部分的依赖库安装步骤完成后。库的头文件在 /usr/local/include/dependency_name/ 目录下,库文件则存在 /usr/local/lib/目录下。所以,安装完成后可以去相应目录下查看是否有对应的文件,如果则初步说明安装成功。或者去网上搜一些测试程序跑跑看是否正确调包并执行。

Pipeline

源文件 --> cmakelist --> cmake --> makefile --> make --> 可执行文件

示意图[1]如下:

示意图 from (1)

references:

  1. make、cmake、make install、configure
  2. configure/make/make install的作用
原文地址:https://www.cnblogs.com/cj2014/p/13674076.html