我正在尝试使用 clang + icecc + ccache 构建。但我无法让它工作。我在同一个网络上使用 gcc + icecc + ccache 成功构建。
以下是软体版本:
Clang version : Ubuntu clang version 3.2-9 (tags/RELEASE_32/final) (based on LLVM 3.2)
ccache version : 3.1.7
icecc version : ICECC 0.9.7
我在 /usr/lib/ccache 中有 clang 符号链接:
$ ls -l /usr/lib/ccache/clang*
/usr/lib/ccache/clang -> ../../bin/ccache*
/usr/lib/ccache/clang++ -> ../../bin/ccache*
我在 /usr/lib/icecc/bin 中有 clang 符号链接:
$ ls -l /usr/lib/icecc/bin/clang*
/usr/lib/icecc/bin/clang -> ../../../bin/icecc*
/usr/lib/icecc/bin/clang++ -> ../../../bin/icecc*
所以这是我尝试过的:
我尝试在我的 PATH env var 中将 ccache 作为第一个:
export PATH=/usr/lib/ccache:/usr/lib/icecc/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
但它只是不分发编译。
我尝试过首先使用icecc:
export PATH=/usr/lib/icecc/bin/:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
它给了我这个输出:
ICECC[5240] 14:27:17: icecream seems to have invoked itself recursively!
根据这个线程https://bugzilla.redhat.com/show_bug.cgi?id=377761这是正常的。
我试过只吃icecc:
export PATH=/usr/lib/icecc/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
但它只是不分发编译。
所以我有点卡在这里,我找不到任何说这是不可能的,所以如果有人有解决方案或替代解决方案(与icecc不同的东西)。
谢谢。