windows上使用cmake和mingw-make 编译c程序

作者: dreamfly 分类: c/c++ 发布时间: 2022-05-15 15:59

很多时候我们希望在windows上进行c语言的开发,而要进行开发,我们就需要搭建开发环境,一般有两种选择,一种是配置GNU环境,可以使用mingw和cygwin等方式,一种是使用微软的cl编译环境,一般visualstudio都会自带环境,当然你也可以自己下载安装。

mingw

MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时(C Runtime)库(MSVCRT.DLL),该库在所有的 NT OS 上有效,在所有的 Windows 95发行版以上的 Windows OS 有效,使用基本运行时,你可以使用 GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的 C 运行时(C Runtime)扩展,与基本运行时相结合,就可以有充分的权利既使用 CRT(C Runtime)又使用 WindowsAPI功能。

下载链接:https://sourceforge.net/projects/mingw/

cmake

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。

下载链接:https://cmake.org/download/

使用方式

cmake 可以生成makefile文件,通过-G选项,我们可以生成mingw所需要的makefile文件。一般情况下我们进入项目目录,会发现里面有CMakeLists.txt文件,cmake就是根据这个文件来生成makefile文件。
我们一般在目录中创建一个build文件,然后进入build目录,在这里我们使用cmake构建出makefile文件。
然后我们使用mingw32-make进行编译。

mkdir build
cd build
cmake -G "MinGW Makefiles" ..
mingw32-make

注意事项

ming32-make可以通过mingw管理工具进行安装。
推荐使用mingw的bash环境进行安装,里面可以调用相关的命令。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

评论已关闭!