Windows下使用CMake进阶

CMake入门实践一文中,咱们初略的介绍了CMake的跨平台性和使用方法。
本文将学习在Windows下如何系统的使用CMake,会涉及到msbuild ,nmake等Windows本地的工具库,若是不是很了解,能够先百度看看。
cmake有Windows的GNU工具,这个工具很傻瓜化,这里不作介绍。linux

回顾代码工程中有什么

  1. 源文件 如cpp 文件
  2. 头文件 如h文件
  3. 咱们本身的库文件 ,lib 或者dll文件
  4. 三方库,不过通常而言,咱们使用库文件的lib或者dll而后加上它的头文件便可
  5. 资源文件
  6. 其余?

将须要的东西在cmake脚本CMakeLists.txt中申明

CMakeLists.txt的写法规则及语法:
该文很全面了,我再也不造轮子了程序员

一键型编译

CMakeLists.txt 文件写好后,咱们就能够开始编译了,和以前的介绍的同样,咱们最好将编译生成的文件所有放入一个中间文件夹中。
linux下的一键编译是很是优美的,windows程序员由于被VS等IDE包养,并非很愿意使用黑压压的命令行工做,可是,我会告诉你,使用命令行工做已是大势所趋了。你不只须要熟悉命令行工做,更应该擅长此道。
widows下也有本身的命令行编译工具,好比msbuild,nmake等。这两个工具是和VS一块儿升级维护的,因此对于像笔者这样,一台机器安装3个版本的VS的人,要使用正确版本的编译工具其实须要走些路。shell

使用nmake

如下是笔者但愿使用VS2008的nmake须要完成的工做:windows

  1. 首先打开cmder
  2. 找到VS2008的安装路径,好比笔者的是E:\Program Files\Microsoft Visual Studio 9
  3. 在cmder中输入 "E:\Program Files\Microsoft Visual Studio 9\VC\vcvarsall.bat" x86(双引号很重要,必须, x86表示我但愿编译32位程序)
  4. 环境配置完成后,切换路径到win-build(这是我自定义的代码生成中间文件夹,外围才是个人工程代码)输入cmake .. -G "NMake Makefiles"
  5. 而后输入nmake
  6. 编译无误后生成了可执行程序

补充说明:工具

  • 使用其余编译环境同VS2008便可,找到该版本的VS的目录,输入命令配置nmake环境
  • 该配置环境只在本次控制台有效,不会影响你的系统配置

使用msbuild

使用msbuild的步骤和nmake大同小异:
将上面第4步的cmake .. -G "NMake Makefiles" 换成 cmake .. -G "Visual Studio 9 2008"
将上面第5步的nmake 换成 MSBuild.exe Project.sln 这个Project.sln 换成你本身的工程名便可学习

实现一键编译

能够把命令写成bat脚本 ,作到真正的一键编译。ui

echo off

echo 'start cmake in windows'

call "e:/Program Files/Microsoft Visual Studio 9/VC/vcvarsall.bat" x86

cd  win-build

cmake .. -G "NMake Makefiles"

nmake

echo 'end all'

其余能够参考,将该bat文件放在和cmake脚本文件同路径下,便可一键生成exe执行文件。.net

参考

官方指导命令行

https://blog.csdn.net/qq_22042587/article/details/78850708

http://www.javashuo.com/article/p-ztjbezug-md.html

http://www.360doc.com/content/14/1113/13/9075092_424804822.shtml

https://blog.csdn.net/gxuan/article/details/7701035

https://blog.csdn.net/yanchuang1/article/details/69683236

http://www.javashuo.com/article/p-pyxrgiet-kq.html

https://blog.csdn.net/libaineu2004/article/details/78995740

相关文章
相关标签/搜索