惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
Y
Y Combinator Blog
M
MIT News - Artificial intelligence
The Cloudflare Blog
WordPress大学
WordPress大学
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 司徒正美
小众软件
小众软件
Blog — PlanetScale
Blog — PlanetScale
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
C
Check Point Blog
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss
V
V2EX
F
Fortinet All Blogs
B
Blog
大猫的无限游戏
大猫的无限游戏
N
Netflix TechBlog - Medium
B
Blog RSS Feed
A
About on SuperTechFans
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

博客园 - 风来风往风伤(TiAmo)

CPU监控工具 桌面日历软件 no matching host key type found. Their offer: ssh-rsa报错信息具体方法 Spring_AOP 原理 增强类型 js漂浮代码 ThoughtWorks(中国)程序员读书雷达 Java实现文件的RSA和DES加密算法 二维码 编码原理简介 Maven+eclipse+svn项目构建 error C1088: 无法刷新编译器中间文件 error C1041: 无法打开程序数据库“xxx\vc140.pdb”;如果要将多个 CL.EXE 写入同一个 .PDB 文件 - 风来风往风伤(TiAmo) Navicat key MICROSOFT SQL SERVER 2012 序列号 IT外包概要 RuntimeError: You called this URL via POST, but the URL doesn’t end in a slash and you have APPEND_SLASH set. 判断django中的orm为空 QEventLoop配合QTimer实现阻塞任务超时处理 sql调优的总结 2019Python学习路线图
QtCreator中使用CMake+Ninja加速编译
风来风往风伤(TiAmo) · 2022-05-07 · via 博客园 - 风来风往风伤(TiAmo)

使用CMake+Ninja可以提高三倍以上编译速度,快到你不适应,感觉没有时间“开小拆”。

它适用于mingw、msvc、gcc、clang等编译工具,只需对构建系统稍加修改即可。

Ninja是一个由google开发小型构建系统,它专注于速度。Ninja用于构建Chrome,部分Android,LLVM,并且由于CMake的Ninja后端,可用于许多其他项目。

它在两个主要方面与其他构建系统不同:它旨在使其输入文件由更高级别的构建系统(比如cmake)生成,并且旨在尽可能快地运行构建。

其他构建系统是高级语言,Ninja旨在成为汇编程序。Ninja构建文件是人类可读的,但手动编写并不是特别方便。(https://ninja-build.org/)

下载链接:https://github.com/ninja-build/ninja/releases

如何配置
(1)配置cmake使用ninja

(2)配置ninja的路径和QT_DIR
(注意:QT_DIR一定要配置,它的路径要区分mingw/msvc,这个很重要因为我们的工程用到了它)
示例:

CMAKE_MAKE_PROGRAM:FILEPATH=C:/ninja-win/ninja.exe
QT_DIR:PATH=C:/Qt/Qt5.9.4/5.9.4/mingw53_32

(3)重新加载工程,依图示执行cmake
注意:文件管理器中清空原来的编译或者使用新的路径

常见问题
提示错误信息“Please set the Qt install path first. -DQT_DIR=XXXX”,按图示设置正确的路径,或以上述配置(2)中加上QT_DIR的环境变量