下载室内设计排版模板网站有哪些,优化大师安卓版,企业网站的建立联系方式,建设房地产公司网站的费用前提
make和Ninja是两个常见的构建工具#xff0c;在网上查阅了一些资料#xff0c;说是Ninja比make构建速度要快很多。但是具体不知道快多少#xff0c;所以趁着这次编译clang的机会#xff0c;分享下它们在时间方面差多少。
步骤
下载llvm
参考llvm官网#xff0c;这…前提
make和Ninja是两个常见的构建工具在网上查阅了一些资料说是Ninja比make构建速度要快很多。但是具体不知道快多少所以趁着这次编译clang的机会分享下它们在时间方面差多少。
步骤
下载llvm
参考llvm官网这里我们使用Shallow clone
git clone --depth1 https://github.com/llvm/llvm-project.gitShallow clone 是指在使用Git进行仓库克隆时只克隆特定数量的最近的提交记录而不是完整的提交历史。这种克隆方式可以显著减少下载的时间的数据量对于大型仓库特别有用。
可以使用--depth选项来指定克隆的深度如上面所示表示只会克隆最新的一个提交。如果需要更多的提交可以调整--depth的值。
使用make进行构建
cmake -DLLVM_ENABLE_PROJECTSclang -DCMAKE_BUILD_TYPEDebug -DLLVM_TARGETS_TO_BUILDhost ../llvm-DLLVM_ENABLE_PROJECTS 只构建clang模式为Debug此时cmake 会生成make的构建档。 然后使用make clang -j16进行构建。
在我的电脑配置如下 16个线程。
共用时2h1m52s。
使用Ninja进行构建
cmake -G Ninja -DLLVM_ENABLE_PROJECTSclang -DCMAKE_BUILD_TYPEDebug -DLLVM_TARGETS_TO_BUILDhost ../llvm-G Ninja表示产生Ninja构建档。 然后
cmake --build . --target clang只生成clang。
共用时1h25m。
结论
首先这次实验不是在很严谨的条件下开展的所以会存在误差。但是整体上来看在时间方面Ninja是要比make快上不少。
接下来有机会的话还会更新下它们的详细区别。