Xcode:架构i386的未定义符号:在为iOS模拟器构建Unity项目时使用DebugStringToFile

时间:2013-11-09 01:34:56

标签: ios xcode unity3d ios-simulator linker-errors

我正在努力解决使用Unity 4.2.2创建的iOS项目的链接器错误。 自上次更新Unity以来,Xcode无法再编译项目,给出了以下错误消息:

  

架构i386的未定义符号:“DebugStringToFile(char   const *,int,char const *,int,int,int,int,int)“,引用自:         libiPhone-lib.a中的prcore :: Surface :: ClearImage(prcore :: color32 const&,prcore :: Surface :: ClearMode)(blitter_integer.o)         libiPhone-lib.a(blitter_integer.o)中的prcore :: Surface :: BlitImage(prcore :: Surface const&,prcore :: Surface :: BlitMode)ld:   在架构i386 clang中找不到符号:错误:链接器命令   退出代码1失败(使用-v查看调用)

截图: Xcode

选择Device SDK并在设备上运行它完全正常。但是,无论我尝试在项目设置中设置哪种设置,iOS模拟器的构建都会失败...

1 个答案:

答案 0 :(得分:1)

不幸的是,这是Unity 4.2.2中的一个错误,但很快就会被修复。

同时,这个简单的解决方法将完成这项工作:

  1. 在Xcode中打开课程main.mm
  2. 通过添加缺失函数DebugStringToFile的定义来满足链接器:
      

    void DebugStringToFile(char const *,int,char const *,int,int,int,int,int){}

  3. 最后,点击构建,你很高兴!     enter image description here

    更新:Fixed in Unity 4.3

    • iOS:修复了iOS7模拟器支持。
    • iOS:修复了Xcode 5 build&运行模拟器目标