编译如何在os x上完全正常工作

时间:2015-03-30 00:16:25

标签: gcc clang llvm

我刚刚开始进入LLVM和clang编译器以及整个事情。我正在关注这本书"开始使用llvm核心库"。我的印象是OS X捆绑了llvm。然而,似乎并非如此。我需要单独安装llvm来获取命令行工具,如llc或lli。

所以我的问题是,当我做一个" clang"编译我的c / c ++代码,创建机器代码的工作是什么后端?我的安装显示了llvm-gcc和llvm-g ++等命令。这是否意味着它在内部使用gcc来创建机器代码?我是否需要brew install llvm才能完全切换到llvm?

1 个答案:

答案 0 :(得分:0)

如果你只想要clang,并计划主要进行高级语言开发(C,C ++,ObjC),那么我建议安装Xcode命令行工具。您可以从https://developer.apple.com/downloads/index.action?name=for%20Xcode获取(或者如果您愿意,可以安装所有Xcode)。

如果您需要llc等较低级别的工具,那么根据您的建议,我的建议就是brew。

如果你的目标只是Mac开发,那么Xcode是更好的解决方案。如果您的目标是使用LLVM,那么brew是更好的答案(或者拉the sources并自己构建)。

如果你想在同一台机器上同时使用,我建议安装命令行工具。只需安装Xcode和LLVM。然后,您可以使用xcrun运行Xcode版本,而不会与LLVM安装发生冲突。

clang不使用llvm-gcc作为后端。它包括LLVM。 llvm-gcc是GCC的修改版本,它与LLVM后端集成,允许期望GCC特定功能的程序与LLVM一起使用。