问题描述
|
我写了一小段代码来生成一个包含一些全局变量的LLVM模块。我正在使用LLVM汇编器将模块转换为LLVM汇编代码,然后转换为本机二进制文件,然后将其链接到其他库以生成最终的二进制文件,即iPhone应用程序。当我为设备构建时,一切正常,但是当我为模拟器构建时,从LLVM程序集转换为机器代码时,出现以下错误:
file.asm:1:UnkNown pseudo-op: .Syntax
file.asm:1:Rest of line ignored. 1st junk character valued 117 (u).
我怀疑目标三元组对于模拟器体系结构是不正确的。我在设备上使用armv6-apple-darwin9
,在模拟器上使用i386-apple-darwin10
。有人可以指出模拟器的正确目标三元组吗?同样欢迎任何其他提示。模拟器在\“ 10.7 Darwin i386 \”计算机上运行(或者ѭ3)告诉我)。
解决方法
看起来您正在输入i386汇编程序的arm汇编程序代码(\“。syntax Unified \”是仅ARM的东西)。因此,是的,您应该为x86生成代码。最有可能-对于i386-apple-darwin10。虽然不确定模拟器。