是否可以使用gold linker编译并链接Clang/LLVM?

问题描述:

我正在为LLVM/Clang编写自定义传递,并且重新编译通常需要一段时间并使用大量内存。我听说黄金链接器(1)花费的时间更少,(2)使用的内存少于标准ld链接器。是否可以使用gold linker编译并链接Clang/LLVM?

有没有办法将标志传入LLVM/Clang构建过程并更改为gold链接器?根据this answer,我一直在尝试使用覆盖文件,但我似乎没有取得很大的成功。

我还会注意到我正在使用Clang 3.9编译最新的Clang/LLVM build(4.0)我不介意在必要时切换回GCC,但宁愿避免它。

+0

只需安装金包,它会被用来代替LD。 – usr1234567

+0

你可能想要考虑lld而不是ld,它声称速度更快。不知道它与黄金相比的表现如何。 – usr1234567

+0

可能的重复[CMake:使用自定义链接器](http://stackoverflow.com/questions/1867745/cmake-use-a-custom-linker) – usr1234567

后4.0(犯下rL292047后),你应该设置LLVM_USE_LINKERgold像这样:

cmake ... -DLLVM_USE_LINKER=gold ... 

参考http://llvm.org/docs/CMake.html#llvm-specific-variables

+0

不幸的是,我是(和我)坚持早期版本的铛,但这完全回答了这个问题。公认! – tonysdg