我在Ubuntu12.04SVN64位下,我已经成功地从官方x86资源库编译了32位版本的llvm/clang。
我现在正在尝试为ARM编译c++代码,在这一点上,我不关心像armv5和armv7a这样的平台版本,我关注的是clang的平台切换是如何工作的
llvm-config --targets-built
ARM CellSPU CppBackend Hexagon Mips MBlaze MSP430 NVPTX PowerPC Sparc X86 XCore但是下面的命令不起作用
clang++ -arch arm soft.cpp -o soft_ARM输出为
clang-3: warning: argument unused during compilation: '-arch arm'我也尝试过类似gcc的变体或其他组合,如-arch=arm,-arch=armv7a,-march=armv5,但似乎都不起作用。
在阅读了一些文档后,我注意到clang只在MAC / Darwin下适用于ARM,而它不应该在其他操作系统下适用于ARM。
我如何使用clang为ARM编译,以及llvm-config --targets-built的输出到底是什么?
发布于 2012-11-05 10:08:39
-arch是达尔文特有的特性。您应该在非达尔文平台上使用-target。或者,编译llvm/target指定目标三元组,或者创建一个从clang到-clang的链接。在您的示例中,目标三元组将是arm-none-linux-gnueabi
https://stackoverflow.com/questions/13221693
复制相似问题