在windows和linux下怎么在不使用cmake-gui的情况下编译和调整宏

1. 在项目根目录下创建build文件夹(也可以是build2、build3...名字随便取)

2.通过cmd窗口或则是linux的终端进入build目录下

3. 先查看支持哪些工程

cmake -G

4. 构建工程

windows下显示

Generators

Visual Studio 16 2019 = Generates Visual Studio 2019 project files.

Use -A option to specify architecture.

Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files.

Optional [arch] can be "Win64" or "ARM".

* Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files.

Optional [arch] can be "Win64" or "ARM".

Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files.

Optional [arch] can be "Win64" or "ARM".

Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files.

Optional [arch] can be "Win64" or "ARM".

Visual Studio 10 2010 [arch] = Generates Visual Studio 2010 project files.

Optional [arch] can be "Win64" or "IA64".

Visual Studio 9 2008 [arch] = Generates Visual Studio 2008 project files.

Optional [arch] can be "Win64" or "IA64".

Borland Makefiles = Generates Borland makefiles.

NMake Makefiles = Generates NMake makefiles.

NMake Makefiles JOM = Generates JOM makefiles.

Green Hills MULTI = Generates Green Hills MULTI files

(experimental, work-in-progress).

MSYS Makefiles = Generates MSYS makefiles.

MinGW Makefiles = Generates a make file for use with

mingw32-make.

Unix Makefiles = Generates standard UNIX makefiles.

Ninja = Generates build.ninja files.

Watcom WMake = Generates Watcom WMake makefiles.

CodeBlocks - MinGW Makefiles = Generates CodeBlocks project files.

CodeBlocks - NMake Makefiles = Generates CodeBlocks project files.

CodeBlocks - NMake Makefiles JOM

= Generates CodeBlocks project files.

CodeBlocks - Ninja = Generates CodeBlocks project files.

CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.

CodeLite - MinGW Makefiles = Generates CodeLite project files.

CodeLite - NMake Makefiles = Generates CodeLite project files.

CodeLite - Ninja = Generates CodeLite project files.

CodeLite - Unix Makefiles = Generates CodeLite project files.

Sublime Text 2 - MinGW Makefiles

= Generates Sublime Text 2 project files.

Sublime Text 2 - NMake Makefiles

= Generates Sublime Text 2 project files.

Sublime Text 2 - Ninja = Generates Sublime Text 2 project files.

Sublime Text 2 - Unix Makefiles

= Generates Sublime Text 2 project files.

Kate - MinGW Makefiles = Generates Kate project files.

Kate - NMake Makefiles = Generates Kate project files.

Kate - Ninja = Generates Kate project files.

Kate - Unix Makefiles = Generates Kate project files.

Eclipse CDT4 - NMake Makefiles

= Generates Eclipse CDT 4.0 project files.

Eclipse CDT4 - MinGW Makefiles

= Generates Eclipse CDT 4.0 project files.

Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files.

Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.

linux下显示

Generators

* Unix Makefiles = Generates standard UNIX makefiles.

Ninja = Generates build.ninja files.

Watcom WMake = Generates Watcom WMake makefiles.

CodeBlocks - Ninja = Generates CodeBlocks project files.

CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.

CodeLite - Ninja = Generates CodeLite project files.

CodeLite - Unix Makefiles = Generates CodeLite project files.

Sublime Text 2 - Ninja = Generates Sublime Text 2 project files.

Sublime Text 2 - Unix Makefiles

= Generates Sublime Text 2 project files.

Kate - Ninja = Generates Kate project files.

Kate - Unix Makefiles = Generates Kate project files.

Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files.

Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.

假设你要在windows上构建出Visual Studio 14 2015

### x64的debug版本

cmake ../ -G "Visual Studio 14 2015" -A x64 -DCMAKE_BUILD_TYPE=debug

假设你要在linux上构建出Eclipse项目

cmake ../ -G "Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=debug

假设你要修改cmake文件里的宏

//windows和linux均支持

cmake ../ -D URHO3D_CARVE=ON

//linux下还支持ccmake(记住是两个c)

ccmake ../

下图是ccmake ../的结果图,这和windows下使用cmake-gui工具很相似

image.png

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信