我遇到了一个框架链接问题,该问题现在已经有好几天了。
这是我在做什么:
在Xcode 5.0.2中,我创建了一个新的Framework项目。我删除了与项目一起创建的默认目标,与它们关联的文件以及相关的方案(因为我想创建自己的目标)。
我创建一个新的框架目标,为其命名,例如“ Test1”,删除默认的头文件和实现文件,并向其添加新的协议。我建立它,只是为了检查,一切都进行得很顺利。
我创建另一个框架目标,给它起另一个名字,说“ Test2”,删除默认的头文件和实现文件,并向其中添加一个新类。
从Test2构建设置中,我链接到Test1。我尝试构建它,它突然出现了:
ld: framework not found Test1
clang: error: linker command failed with exit code 1 (use -v to see invocation)
如果我不包括Test1框架,它将按预期成功构建(框架不包含在任何文件中,仅包含在构建设置中)。
尝试过清理和重建,手动删除文件,从设置中删除框架,库和标头路径,重新启动Xcode(甚至是计算机)以及其他一些我不记得的东西,但无济于事。还尝试了其他SO答案的一些建议,但还是没有运气。
如果有人对发生的事情有所了解,我将非常感激。
谢谢。
编辑:这是指向创建测试项目的存档的链接,以演示上述问题。此后,我还向目标2的依赖项中添加了“目标1”框架。
好的,事实证明上面没有关系。抱歉造成混乱(但是正确设置依赖项仍然是一个好主意)。
Xcode找不到框架的原因是因为您尚未向其添加任何代码。您只有标题。将.m(或者可能是.c,.cpp或.mm)文件添加到Target1后,它就会按预期工作!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句