发布于 2015-05-13 23:24:39 | 148 次阅读 | 评论: 0 | 来源: 网友投递
ccache 高速的C/C++编译工具
ccache(“compiler cache”的缩写)是一个编译器缓存,该工具会高速缓存编译生成的信息,并在编译的特定部分使用高速缓存的信息, 比如头文件,这样就节省了通常使用 cpp 解析这些信息所需要的时间。如果您编译清单 2 中的文件,假定 foobar.h 中包含对其他头文件的引用,ccache 会用那个文件的 cpp-parsed 版本来 取代 include 声明。就那么简单。不是真正去读取、理解并解释其内容,ccache 只是 将最终的文本拷贝到文件中,使得它可以立即被编译。
ccache 3.2.2 发布,此版本主要包括以下更新:
新特性及性能改善:
Added support for CCACHE_COMPILERCHECK=string:<value>. This is a faster alternative to CCACHE_COMPILERCHECK=<command> if the command’s output can be precalculated by the build system.
Add support for caching code coverage results (compiling for gcov).
Bug 修复:
Fixed bug which could result in false cache hits when source code contains '"' followed by " /*" or " //" (with variations).
Made hash of cached result created with and without CCACHE_CPP2 different. This makes it possible to rebuild with CCACHE_CPP2 set without having to clear the cache to get new results.
Don’t try to reset a non-existing stats file. This avoids “No such file or directory” messages in the ccache log when the cache directory doesn’t exist.
Fixed a bug where ccache deleted clang diagnostics after compiler failures.
Avoid performing an unnecessary copy of the object file on a cache miss.
Bail out on too hard compiler option -fmodules.
Bail out on too hard compiler option -fplugin=libcc1plugin (interaction with GDB).
Fixed build error when compiling ccache with recent clang versions.
Removed signal-unsafe code from signal handler.
Corrected logic for when to output cached stderr.
Wipe the whole cached result on failure retrieving a cached file.
Fixed build error when compiling ccache with recent clang versions.
详细信息请查看发行页面。
此版本现已提供下载:
https://github.com/jrosdahl/ccache/archive/v3.2.2.zip
ccache(“compiler cache”的缩写)是一个编译器缓存,该工具会高速缓存编译生成的信息,并在编译的特定部分使用高速缓存的信息, 比如头文件,这样就节省了通常使用 cpp 解析这些信息所需要的时间。如果您编译清单 2 中的文件,假定 foobar.h
中包含对其他头文件的引用,ccache 会用那个文件的 cpp-parsed 版本来 取代 include
声明。就那么简单。不是真正去读取、理解并解释其内容,ccache 只是 将最终的文本拷贝到文件中,使得它可以立即被编译。