我继承了一个iOS项目,甚至无法构建它。我一直收到以下错误:
ld: file not found: -ObjC
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我看过关于“找不到文件”错误的帖子,但没有关于“-ObjC”位看起来像开关的帖子。
有什么想法吗?
答案 0 :(得分:2)
-ObjC
是ld
的有效选项,但如果某个其他选项被破坏,则可能会混淆ld
。例如,-framework
选项需要一个参数,如果缺少该参数(框架的名称),那么这将导致您看到的那种错误。
ld ... -framework -ObjC
但是,如果没有看到完整的链接器命令行,我无法确切地告诉您错误的位置。
答案 1 :(得分:0)
在Xcode和xcconfig文件中查看构建设置。
我已经看到人们在没有任何理由的情况下向一些构建设置添加选项 - ObjC,并且链接器可以将其解释为链接名为ObjC或-ObjC的文件的请求。
答案 2 :(得分:0)
谢谢大家,我设法对它进行排序。
@Droppy指出我正确的方向。
在-ObjC
标志之前,还有一个叫-force_all
。然后我偶然发现this answer表示你只需要-ObjC
标志。我删除了-force_all
并开始工作了!