Xcode链接器错误:文件太小,体系结构x86_64

我正在Xcode中开发一个应用程序。

当我尝试构build时,出现这个错误:

ld: in /Users/theodore/Library/Developer/Xcode/DerivedData/Tower-bkpdifuqssebjdgurzmtirbxejnn/Build/Intermediates/Tower.build/Debug/Tower.build/Objects-normal/x86_64/TWRAppDelegate.o, file too small for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 

有谁知道什么是错的?

偷@ martin-baulig的回答:

尝试一个完整的重build/清洁。 以前的版本可能会exception中止,导致TWRAppDelegate.o文件损坏或零大小。

我通常会添加一个空格(可以是任何字符),删除它,然后保存。 比干净/构build更容易和更快。

由于构build一个干净的项目可能会花费太长时间,对于那些有权访问caching中已损坏的文件的人来说,这种方法会更短:

  • 删除文件(删除参考)
  • build立项目
  • 重新插入文件
  • build立项目

完整版本,所以你没有find该文件的麻烦:

  • 在Xcode项目导航器中find该文件
  • 右键单击文件,然后按“查找器中显示”(在文件所在位置打开查找器)
  • 在Xcode中select文件,然后按退格键,然后点击“删除参考”
  • build立项目(它会失败,但等待它完成)
  • 通过将其从查找器拖放到刚才删除的位置来重新插入文件
  • build立项目(现在应该工作)

步骤1.转到:项目>构build设置>searchpath

第2步。将“始终search用户path”设置为是

第3步。build立项目(你会得到一个警告,但项目将build立。)

第4步。将“始终search用户path”设置为否,然后重新构build以消除警告

rm -rf /Users/hostname/Library/Developer/Xcode/DerivedData

干净的重build没有在我的情况下,所以我解释我是如何解决这个问题的:
– 删除对文件的引用(不要删除文件)
– 再次将文件添加到项目并运行