“文件太小,不适用于架构arm64”,“clang:错误:链接器命令失败,退出代码为1”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“文件太小,不适用于架构arm64”,“clang:错误:链接器命令失败,退出代码为1”相关的知识,希望对你有一定的参考价值。
我刚刚尝试在iPad上运行应用程序并出现此错误:
ld: file too small (length=0) file '(PathToMyProjectBuild)/Objects-normal/arm64/Palette.o' for architecture arm64
clang: error: linker command failed with exit code 1
我的应用程序在iPhone上运行良好,并且优雅地在我的iPad上运行,然后我突然得到了这个。它甚至意味着什么,我怎么能解决这个问题,因为我正在开发这个应用程序主要在我的iPad上使用它,而不是iPhone(尽管它是通用的)?
答案
中断生成后会发生此错误。产品/清洁通常会修复它。
我相信编译器正试图将二进制数据保存在一个文件/空间中,该文件/空间被中断的构建部分分配(并且没有清理),但是新的二进制数据大于前一个可能是零字节文件的二进制数据。
另一答案
有时清理项目不是最佳选择,因为从头开始重新编译所有内容需要很长时间。大多数情况下,只有一个(在极少数情况下为2或3)文件会产生错误。
要解决此问题,只需从终端中删除该确切文件,然后通过在rm
命令后粘贴完整路径来重新构建。在你的情况下,它将是:
$ rm (PathToMyProjectBuild)/Objects-normal/arm64/Palette.o
以上是关于“文件太小,不适用于架构arm64”,“clang:错误:链接器命令失败,退出代码为1”的主要内容,如果未能解决你的问题,请参考以下文章
clang 插件编译错误:未定义符号 llvm::Registry<clang::PluginASTAction, llvm::RegistryTraits<clang::PluginAS