我想建立一个最近的clang + llvm + libC++。我目前正在一个系统上(基于CentOS 6.6),在这个系统中,我无法轻松获得clang的二进制包,但是通过设置一些环境变量,我可以在最近建立一个GCC(例如4.9)。正确的方法来建立clang和libC++在一起(引导)
我想铛的我的版本是
- 便携式,即(例如使用
-rpath $ORIGIN
)没有硬编码路径 - 既不依赖于系统的gcc也不导入的gcc 4.9(即,他们的C/C++运行时)
- 尤其是,编译器,编译器作为库libclang.so和用新编译器构建的程序都不应该依赖于libstdC++,但它们应该使用新构建的libC++。
我能做到这一点,但它涉及到把铛,LLVM,libc中++,的libC++ ABI(和东西我可能忘记了)在一棵树,从一个新建的目录铛,然后设置了大量的标志一味地从第二个构建目录重新构建它。
是否有另一种正确的方式引导与libC++ clang?我相信肯定会有,因为正如我上面所描述的那样,clang的官方二进制文件是自给自足的。
“官方”包可能会使用你的方法(把它全部放在一个单一的源代码树中)或交错建立(构建没有libC++的Clang,使用新的clang构建libC++,使用libC++构建新的clang)。 –
顺便说一句,为什么你不下载一个更大的发行版的源代码包,看看他们是如何做到的? –