windows cmake与nmake
在Linux下编库经常会使用CMakeLists.txt文件,然后一个cmake 再一个make就可以编译出来。
在Windows下有cmake,但是cmake出来是一个Visual Studio工程,然后搜索windows下能不能用make,结果是要安装MinGW,然后就放弃了。
最近看到windows下可以使用cmake和nmake的组合编译程序,记录下来。
先看一个结果:

一个简单的c程序,文件名为main.c,放在桌面test文件夹下:
//main.c
#include <stdio.h>
int main()
{
printf("Hello World!/n");
return ;
}
编写CMakeLists.txt文件,放在test文件夹下:
project(HELLO)
set(SRC_LIST main.c)
add_executable(hello ${SRC_LIST})
在test文件夹下新建一个build文件夹,进入build文件夹:
然后打开下面的命令窗口:

进入后如下所示:

使用命令进入build文件夹:
cd /d C:\Users\Administrator\Desktop\test\build
执行cmake与nmake:
cmake .. -G"NMake Makefiles"
nmake
执行完毕会生成一个hello.exe,在命令窗口继续执行:
hello.exe
就会输出结果:
Hello World!/n
正如文章开头看到的一样。
参考博客:https://blog.csdn.net/dbzhang800/article/details/6314073
参考博客:https://blog.csdn.net/graduate_2017/article/details/70752770?t=1514901314692
windows cmake与nmake的更多相关文章
- easymake cmake xmake nmake ...
最简单的Makefile,但是还是大程序少不了makefile工具 #CC=arm-linux-gnueabihf-CC=target: $(CC)gcc -o algo_main algo_m ...
- windows+CMake+mingw 搭建c c++开发环境
layout: post title: "windows+CMake+mingw 搭建c c++开发环境" date: 2018-03-30 22:23:06 tags: wind ...
- 在Windows下使用nmake+Makefile+编译ZThread库(附例子)
----------2015/01/09/23:21更新----------------------------------- 关于保留DEBUG信息的一个简单例子,见这篇随笔 ----------2 ...
- zlib、libzip、 libzippp 库编译(windows + cmake + vs2013)
"libzipp" 这库是基于 "libzip" 之上封装的,而 "libzip" 又是基于 "zlib"库封装的,所以 ...
- windows cmake安装
https://blog.csdn.net/u013832707/article/details/53127710
- Windows上编译OpenImageIO
这里使用的是OpenImageIO 1.1.11,要将OIIO解压到[工作目录]/openimageio/oiio里面. 先要给OIIO打一个patch,patch文件是Blender提供的: 下载O ...
- Windows上编译LLVM 3.2
LLVM还是做的很好的,可以很方便的编译. 解压LLVM 3.2到[工作目录]/llvm/llvm-3.2.src 解压Clang到[工作目录]/llvm/llvm-3.2.src/tools/cla ...
- Windows下使用CMake进阶
目录 回顾代码工程中有什么 将需要的东西在cmake脚本CMakeLists.txt中申明 一键型编译 使用nmake 使用msbuild 实现一键编译 参考 在CMake入门实践一文中,我们初略的介 ...
- 普通Windows控制台窗口运行nmake编译VC
我的GDAL编译都是在VS2012提供的prompt windows里面运行nmake完成的.但是如果想将编译自动化,放到Jenkins里面怎么办呢?首先没有VS2012的工程,也不想费力去生成一个, ...
随机推荐
- AcWing 11. 背包问题求方案数
//g[i,j]表示f[i,j]取最大值的方案数目 //体积最多是j 全部为0,v>=0 //体积恰好为j f[0][0]=0,f[i]=无穷,v>=0 //体积至少是j f[0][0]= ...
- Java大全-吐血整理
gqzdev
- SIFT算法原理(3)-确定关键点的主方位,构建关键点描述符
介绍官网:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.html ...
- hadoop搭建HA集群之后不能自动切换namenode
在搭好HA集群之后,想测试一下集群的高可用性,于是先把active的namenode给停掉: hadoop-daemon.sh stop namenode 或者直接kill掉该节点namenode的对 ...
- 一点点学习PS--实战五
本节实战的内容,新学习到的功能是:人物影子边缘.立体的心形 1.工具的使用: (1)滤镜--模糊--特殊模糊 (2)滤镜--滤镜库--艺术效果--水彩 (3)滤镜--滤镜库--纹理化 (4)自动形状工 ...
- C分支语句的工程用法
if语言中零值比较的注意点: -bool型变量应该直接出现于条件中,不要进行比较 -变量和零值比较时,零值应该出现在比较符号左边 -float型变量不能直接进行零值比较,需要定义精度 bool b = ...
- Radar Installation(利用数据有序化进行贪心选择)
English appre: an infinite straight line:一条无限长的直线 on the coasting:在海岸线上 Cartesian coordinate system, ...
- 较完整checkstyle.xml及说明
具体项的具体说明请参考:https://www.cnblogs.com/ziyuyuyu/p/9870717.html 梳理此次完整checkstyle.xml说明,以备以后再此基础上删减 <? ...
- Json.Net的介绍与简单实用(兼容2.0/3.0/3.5/4.5/RT)
本文的前提是你已经熟悉Json,如果您还不知道什么是Json是什么,请自行查看维基百科. 一.Json.Net是什么? Json.Net是一个读写Json效率比较高的.Net框架.Json.Net 使 ...
- vue引用fastClick后,ios输入框聚焦不灵敏问题
fastClick.prototype.focus = function (targetElement) { targetElement.focus() }