LLVM编译过程和LLD

时间:2015-07-06 17:59:50

标签: clang llvm lld

我一直试图切换到LLVM,因为我想更多地了解整个软件开发人员。场景,现在看来,LLVM就是未来。我现在多次使用GNU / GCC和LLVM / Clang从源代码构建了LLVM / Clang / LLD / compiler-rt / libcxx。

当我尝试使用新编译的编译器时出现问题。从我所看到的,clang使用的是GNU ld而不是LLVM的lld。这是真的吗?

LLD似乎是来自lld -help输出的非常有限的程序,但从我读过的内容来看,它与ld一样功能齐全。我找不到关于如何在任何地方使用它的文档 - 有谁知道我在哪里可以找到某种综合手册呢?

谢谢。

3 个答案:

答案 0 :(得分:0)

暂时没有手册,依赖于平台可能对您有效。也就是说,如果lld是“生产准备好”,我们已经切换到默认使用它的各种平台。它还没有,所以我建议你不要用它来进行日常开发。

答案 1 :(得分:0)

LLVM团队表示已经准备就绪,因为FreeBSD可以编译{LID a lot of things并与之联系。

LLD项目的文档可以在http://lld.llvm.org/找到。

写了:

  

LLD是GNU链接器的直接替代品。

     

它接受与GNU相同的命令行参数和链接描述文件。

所以你可以使用与GNU LD相同的参数。

答案 2 :(得分:0)

-fuse-ld=lld传递给clang以使其使用lld进行链接。到目前为止,它的状态非常好。

您可以将-v-###传递给clang,以使其打印运行或将要运行的链接器命令。