【cmake】Windows下用cmake生成可执行文件exe

1.新建文件夹和main.cpp文件

#include <iostream>
using namespace std;
int main() {
	std::cout << "hello world" << std::endl;
	system("pause");
	return 0;

}

2.写CMakeLists.txt文件

cd7f8432c0c5421a889afbe223566f57.png

PROJECT (HELLO)
SET(SRC_LIST main.cpp)
MESSAGE(STATUS "THIS IS BINARY DIR " ${HELLO_BINARY_DIR})
MESSAGE(STATUS "THIS IS SOURCE DIR " ${HELLO_SOURCE_DIR})
ADD_EXECUTABLE(hello ${SRC_LIST})

 内容含义可以看其他文章。

3.然后按教程来讲,应该输入cmake . 生成makefile文件。

3.1在windows下编译器默认的是vs,会生成一大堆文件。

问题:在 windows下cmake不生成makefile文件。

089f30cb67df46db8ea93b06b6848bd2.png

d92cae4118a54190aca9257eddbbaafd.png

3.2 这里不再继续了,删除,然后只剩下mian.cpp和CMakeLists.txt重新输入cmake -S ./ -B ./ -G "MinGW Makefiles"。(当然这里需要电脑上有MinGW ,并且配置环境变量)

d9beea9f85db4bd190c9f20c342cb06a.png

可以看到 makefile文件生成了。

223b0bc30e9d416f9ec9e095229a98c4.png 3.3 然后cmd中输入make。

 会出现问题'make' 不是内部或外部命令,也不是可运行的程序

解决:找到mingw32-make.exe。可以复制一份重命名为make.exe就行了。

983d91d470b1460bb10f4e1457e38447.png

 继续。cmd中make。

82cff61034e14af5a93f0ae2f6b57439.png

可以看到hello.exe 已经生成了

93a04839704c457684cbe2064bd54c92.png

3.4 运行hello.exe 

 8d8a9e739a8a4bf38d4c871e9211fdb6.png

猜你喜欢

转载自blog.csdn.net/m0_57168310/article/details/126334044