我想建立一个最近的clang + llvm + libc ++。我目前正在使用一个系统(基于CentOS 6.6),我无法轻松获得clang的二进制包,但是我可以通过设置建立一个足够用于构建clang的GCC(例如4.9)一些环境变量。
我喜欢我的clang版本
-rpath $ORIGIN
)我可以做到这一点,但它涉及将clang,llvm,libc ++,libc ++ abi(以及我可能忘记的事情)放在一棵树上,从一个构建目录构建clang,然后盲目地设置很多标记并构建它再次来自第二个构建目录。
是否有另一种正确的方法来引导libc ++?我相信必须有,因为llvm& amp;如上所述,clang是自给自足的。
答案 0 :(得分:7)
我自己一直对此感到好奇,并且不认为有一个正确的,#34;祝福的"和李一起训练的方式 BC ++。
根据我的经验,从存储库安装的clang依赖于libstdc ++,从二进制安装的clang也是如此 在http://www.llvm.org/releases/download.html#3.7.0可用的发行版(我已尝试过Ubuntu 14.04的发行版)。 repo clang和llvm.org之间的一些区别:
考虑到来自存储库和llvm.org的clang依赖于libstdc ++,我会说没有正确的wa 你摆脱了这种依赖,至少在我曾经玩过的Linux系统上没有,包括Ubuntu,Amazon Linux,CentOS和Fedora。
然而,说到这里,我发现即使使用依赖于libstdc ++的clang也可以生成依赖于libc ++而不是libstdc ++的程序。尽管可以构建一个本身并不依赖于libstdc ++的clang + llvm设置,正如您已经发现的那样,但我认为没必要跳过所有这些环节。如果您觉得有帮助,我会在http://www.omniprog.info/clang_no_gcc.html
上发表一篇简短的文章我还在尝试这一切,如果我遇到一些有趣的事情,我会更新这个答案。