llvm-ld仍然存在于clang 3.4?

use*_*710 9 c c++ linker llvm ld

上次我检查clang它是在版本3.1/3.2,现在我在Ubuntu 13.04 64位下我从官方apt存储库安装了clang和llvm(以及工具),但是没有任何痕迹llvm-ld-3.4,llvm-ld-3.0并且llvm-ld-3.1是我的机器上只有2个版本的工具,我的问题是:我应该替换llvm-ld并生成库或机器可执行文件?

Oak*_*Oak 18

llvm-ld不复存在.从LLVM 3.2发行说明:

llvm-ld和llvm-stub已被删除,llvm-ld功能可以部分替换为llvm-link | 选择| {llc | as,llc -filetype = obj} | ld,或完全由Clang取代.

或者,以更好的格式:

  1. 链接所有.bc/llvm-link.ll文件,以获取一个bitcode文件
  2. 运行opt以优化bitcode文件
  3. 通过以下方法之一生成目标文件
    • llc获取asm文件,然后系统汇编程序(as)获取目标文件
    • llc -filetype=obj 获取一个目标文件(这只是自己调用系统汇编程序)
  4. 系统链接器(ld)将目标文件与所有其他所需的目标文件链接起来

至于删除它的原因,请查看此LLVM-dev讨论.

此外,您可能对此相关问题感兴趣:如何将对象链接到LLVM> = 3.1的库?(没有GNU ld)