如何使用 LLVM >= 3.1 将对象链接到库?(没有 GNU ld) [英] How to link object to libraries with LLVM >= 3.1 ? ( no GNU ld )
问题描述
如何使用 Llvm/Clang(版本 3.3 (trunk 168461))提供的工具生成工作可执行文件?
我已经用 clang++ -c [...]
编译了一个对象,我想尝试将此对象链接到 1 个特定库,看看这是否可以生成一个有效的可执行文件.p>
我注意到,从 3.1 版本 llvm-ld
开始,它已被删除,并且 llvm-link
看起来并没有继承 的所有选项llvm-ld
,虽然它在官方文档中被标记为 llvm-ld 的替代品,所以我只是不明白我应该如何链接这个对象.
我不想使用 GNU/GCC 套件中的 ld
,只使用来自 llvm 的工具.
总结一下,这是我从 svn 的 llvm 构建中获得的工具
bugpoint clang-check llvm-bcanalyzer llvm-extract llvm-objdump llvm-stress scan-buildc++-analyzer clang-tblgen llvm-config llvm-link llvm-prof llvm-symbolizer 扫描视图ccc-analyzer llc llvm-cov llvm-lit llvm-ranlib llvm-tblgen scanview.cssclang lli llvm-diff llvm-mc llvm-readobj macho-dump ScanView.pyclang++ llvm-ar llvm-dis llvm-mcmarkup llvm-rtdyld opt sorttable.jsclang-3.3 llvm-as llvm-dwarfdump llvm-nm llvm-size Reporter.py startfile.py
谢谢.
此时(还)没有 llvm 链接器.不,llvm-link 不是 LLVM ld 的替代品.因此,您现在需要使用 binutils 中的 ar/ranlib/ld.
How I can generate a working executable with the tools provided with Llvm/Clang ( version 3.3 (trunk 168461) ) ?
I have compiled an object with clang++ -c [...]
and i would like to try to link this object to 1 specific library and see if this can generate a working executable.
I have noticed that from the 3.1 release llvm-ld
it's been removed and llvm-link
doesn't look like it has inherited all the options from llvm-ld
, although it's marked as the alternative to llvm-ld on the official docs, so i just don't get how I'm supposed to link this object.
I don't want to use ld
from the GNU/GCC suite, only tools from llvm.
To summarize this are the tools that i have got from the llvm build from the svn
bugpoint clang-check llvm-bcanalyzer llvm-extract llvm-objdump llvm-stress scan-build
c++-analyzer clang-tblgen llvm-config llvm-link llvm-prof llvm-symbolizer scan-view
ccc-analyzer llc llvm-cov llvm-lit llvm-ranlib llvm-tblgen scanview.css
clang lli llvm-diff llvm-mc llvm-readobj macho-dump ScanView.py
clang++ llvm-ar llvm-dis llvm-mcmarkup llvm-rtdyld opt sorttable.js
clang-3.3 llvm-as llvm-dwarfdump llvm-nm llvm-size Reporter.py startfile.py
Thanks.
There are no llvm linker at this time (yet). And no, llvm-link is not a replacement for LLVM ld. So, you'd need to use ar / ranlib / ld from your binutils for now.
这篇关于如何使用 LLVM >= 3.1 将对象链接到库?(没有 GNU ld)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!