llvm-gcc-4.2 是默认前端,具有平台相关选项。如果 llvm 已在目标支持下构建并找到,它可以指定体系结构和机器以调用特定目标的编译器。对于/usr
目录,它用于系统范围(Intel x86)平台,因此它i686-apple-darwin11
仅包含(i386 和 x86_64)平台。所以如果你显式调用i686-apple-darwin11-llvm-gcc
,它就可以支持 x86, x86_64 目标。
如果您安装了 Xcode 和 iOS 开发环境,您应该可以找到更多文件,如下所示。
$ ls -l
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/bin
total 2336
-rwxr-xr-x 1 root wheel 555056 Sep 8 16:49 arm-apple-darwin10-llvm-g++-4.2
-rwxr-xr-x 1 root wheel 546832 Sep 8 16:49 arm-apple-darwin10-llvm-gcc-4.2
-rwxr-xr-x 1 root wheel 130784 Sep 8 16:49 gcov-4.2
-rwxr-xr-x 1 root wheel 550960 Sep 8 16:49 i686-apple-darwin10-llvm-g++-4.2
-rwxr-xr-x 1 root wheel 542752 Sep 8 16:49 i686-apple-darwin10-llvm-gcc-4.2
-rwxr-xr-x 1 root wheel 106064 Sep 8 16:49 llvm-c++-4.2
-rwxr-xr-x 1 root wheel 255696 Sep 8 16:49 llvm-cpp-4.2
-rwxr-xr-x 1 root wheel 106064 Sep 8 16:49 llvm-g++-4.2
-rwxr-xr-x 1 root wheel 106064 Sep 8 16:49 llvm-gcc-4.2
llvm-gcc
和有两个arm-apple-darwin10
目标i686-apple-darwin10
。主机仍然是 i686 Mac OS X,因此llvm-gcc-4.2
主机编译器也使用默认 i686。arm-apple-darwin10-llvm-gcc-4.2
是一个交叉编译器,可以在 Intel Mac OS X 平台上运行,生成 ARM 指令代码。