Xcode 5问题,链接到同一项目中的框架
我遇到了一个框架链接问题,好几天都无法解决 以下是我正在做的:Xcode 5问题,链接到同一项目中的框架,xcode,macos,cocoa,frameworks,Xcode,Macos,Cocoa,Frameworks,我遇到了一个框架链接问题,好几天都无法解决 以下是我正在做的: 在Xcode 5.0.2中,我创建了一个新的框架项目。我删除了与项目一起创建的默认目标、与其关联的文件以及相关方案(因为我想创建自己的方案) 我创建了一个新的框架目标,给它起了一个名字,比如“Test1”,删除了默认的头文件和实现文件,并向它添加了一个新的协议。我建立它,只是为了检查,一切顺利 我创建了另一个框架目标,给它起了另一个名字,比如“Test2”,删除了默认的头文件和实现文件,并向它添加了一个新类 从Test2构建设置,我
ld: framework not found Test1
clang: error: linker command failed with exit code 1 (use -v to see invocation)
编辑:我已经将“目标1”框架添加到目标2的依赖项中。您需要将目标2设置为将目标1作为依赖项。为此,请打开目标2“构建阶段”窗格。旋转打开“目标依赖项”。单击“+”按钮添加依赖项,当工作表出现时,选择“目标1”
完成此操作后,每次构建目标2时,它都将确保构建了目标1,并且位于正确的链接位置。您需要将目标2设置为将目标1作为依赖项。为此,请打开目标2“构建阶段”窗格。旋转打开“目标依赖项”。单击“+”按钮添加依赖项,当工作表出现时,选择“目标1”
完成此操作后,每次构建目标2时,它都将确保构建了目标1,并且位于正确的链接位置。您需要将目标2设置为将目标1作为依赖项。为此,请打开目标2“构建阶段”窗格。旋转打开“目标依赖项”。单击“+”按钮添加依赖项,当工作表出现时,选择“目标1”
完成此操作后,每次构建目标2时,它都将确保构建了目标1,并且位于正确的链接位置。您需要将目标2设置为将目标1作为依赖项。为此,请打开目标2“构建阶段”窗格。旋转打开“目标依赖项”。单击“+”按钮添加依赖项,当工作表出现时,选择“目标1”
完成后,每次构建目标2时,它都会确保构建了目标1,并且位于正确的链接位置。好的,事实证明上述内容是不相关的。很抱歉造成混淆(但正确设置依赖项仍然是一个好主意)
Xcode找不到框架的原因是您没有向其添加任何代码。你只有一个标题。一旦您将.m(或者可能是.c或.cpp或.mm)文件添加到Target1,它就会按预期工作 好吧,事实证明上述情况是不相关的。很抱歉造成混淆(但正确设置依赖项仍然是一个好主意)
Xcode找不到框架的原因是您没有向其添加任何代码。你只有一个标题。一旦您将.m(或者可能是.c或.cpp或.mm)文件添加到Target1,它就会按预期工作 好吧,事实证明上述情况是不相关的。很抱歉造成混淆(但正确设置依赖项仍然是一个好主意)
Xcode找不到框架的原因是您没有向其添加任何代码。你只有一个标题。一旦您将.m(或者可能是.c或.cpp或.mm)文件添加到Target1,它就会按预期工作 好吧,事实证明上述情况是不相关的。很抱歉造成混淆(但正确设置依赖项仍然是一个好主意)
Xcode找不到框架的原因是您没有向其添加任何代码。你只有一个标题。一旦您将.m(或者可能是.c或.cpp或.mm)文件添加到Target1,它就会按预期工作 谢谢你的回答。我想问一下,除了在“链接二进制文件与库”一节中链接它之外,还有其他内容吗?实际上有什么不同?在依赖项中添加了“目标1”,但没有任何更改。另请参见上面的“我的编辑”。是的,您需要将其添加到依赖项中,并针对其进行链接。将它放在依赖项中可以确保每当重建目标2并且目标1中的某些内容发生更改时,都会重建它。如果您更改了目标1中的某个私有标头,但忘记了重建,然后重建了目标2,即使目标2不知道该私有标头,目标1也会得到重建,因为它自上次创建以来已发生更改。我对您的答案和评论投了赞成票,认为有帮助,但这并不能解决我的问题。谢谢你的回答。我想问一下,除了在“链接二进制文件与库”一节中链接它之外,还有其他内容吗?实际上有什么不同?在依赖项中添加了“目标1”,但没有任何更改。另请参见上面的“我的编辑”。是的,您需要将其添加到依赖项中,并针对其进行链接。将它放在依赖项中可以确保每当重建目标2并且目标1中的某些内容发生更改时,都会重建它。如果您更改了目标1中的某个私有标头,但忘记了重建,然后重建了目标2,即使目标2不知道该私有标头,目标1也会得到重建,因为它自上次创建以来已发生更改。我对您的答案和评论投了赞成票,认为有帮助,但这并不能解决我的问题。谢谢你的回复