内容十分简洁干活,最后有实际操作,做一遍你们就清楚了
编译器:gcc、clang
工具:cmake、make
使用说明:
开发的时候,用 cmake根据CMakeLists.txt生成Makefile。
编译的时候用,make基于Makefile编译项目
cmake
CMake可以自动生成Makefile或VS等IDE的工程文件,从而实现跨平台的编译和构建。
cmake根据CMakeLists.txt生成Makefile,如:
CMake只是一个用于生成编译器配置文件(makefile)的工具
1 在源代码目录下创建一个CMakeLists.txt文件,编写编译项目的规则。
2 进入一个新建的目录,例如build目录。
3 在build目录下执行cmake命令,指定源代码目录。
4 cmake会自动查找所需的编译工具,并生成一个Makefile文件。
5 在build目录下执行make命令,根据Makefile文件编译和链接源代码,生成可执行文件。
CMakeLists.txt
CMakeLists.txt是编译项目的规则如:
cmake_minimum_required(VERSION 3.23)
project(cnew C)
set(CMAKE_C_STANDARD 11)
add_executable(cnew
./main.c)
make
用于管理代码编译、链接和安装等操作,可以自动根据文件依赖关系来完成对应的编译和链接过程。它的配置文件是Makefile。
make是一种基于规则(Makefile)的构建工具
gcc
gcc是GNU编译器套装中的一个C语言编译器,常用于将C代码编译为可执行文件。
gcc main.c -o main
实际操作
举例:
1、一般拿来一个c/cpp项目,要做的操作是:
./configure
make
make install
这个是构建过程,make用来构建项目
2、自己写的文件 main.c
gcc main.c -o main
这个会编译成二进制可执行文件main
3、如果你给这个同路径下再写一个CMakeLists.txt文件
cmake_minimum_required(VERSION 3.23)
project(cnew C)
set(CMAKE_C_STANDARD 11)
add_executable(cnew
./main.c)
这个时候当前路径下有两个文件,分别是:
CMakeLists.txt和main.c
现在就是用到cmake的时候了
cmake .
执行 cmake . 命令会在当前目录生成一个 Makefile 文件和一些其他的辅助文件,这些辅助文件包括:
- CMakeCache.txt:缓存文件,记录了 CMake 生成 Makefile - 时使用的变量值、路径等信息。
- cmake_install.cmake:安装文件,包含安装目标文件的相关信息。
- Makefile:用于编译和链接 C/C++ 项目的 Makefile 文件。
- CMakeFiles 目录:存放 CMake 在构建过程中生成的中间文件,如依赖文件、编译器输出、对象文件等。