gpt4 book ai didi

xcode - 将一个 Xcode 项目包含在另一个项目中——链接器错误

转载 作者:行者123 更新时间:2023-11-29 11:24:09 25 4
gpt4 key购买 nike

我正在尝试这样做,但遇到了问题。父项目需要从子项目访问类 SettingsViewController。我已将子项目路径放入我的标题搜索路径中。一切都编译正常,但我收到链接器错误,如下所示:

Undefined symbols: "_OBJC_METACLASS_$_SettingsViewController", referenced from: _OBJC_METACLASS_$_StatisticsViewController in StatisticsViewController.o "_OBJC_CLASS_$_SettingsViewController", referenced from: objc-class-ref-to-SettingsViewController in SelectionViewController.o _OBJC_CLASS_$_StatisticsViewController in StatisticsViewController.o ld: symbol(s) not found collect2: ld returned 1 exit status

我该如何解决这个问题?

最佳答案

我假设子项目是一个静态库。目前,你的父项目知道如何找到子项目的头文件(否则它不会编译),但它不知道它必须链接到子项目的库(.a)文件。

您应该将库文件添加到 Targets > {your app} > Link Binary with Libraries。此外,您可能需要添加链接器标志 -ObjC 和可能的 -all_load

网上有很多详细的描述,例如Build iPhone static library with Xcode .

更新:

如果它不是一个静态库,那么它就是一个相当奇怪的项目设置。最好的办法是将共享文件(.h 和 .m)添加到两个项目中。然后它们将在两个项目中独立编译。如果您的共享文件很少,那应该可行。

但我还是建议使用带有静态库的项目设置。如果您正确设置它,它会很好地工作。我成功地使用了它。而且 - 正如我之前所说 - 网上有一些关于如何设置它的很好的描述。

关于xcode - 将一个 Xcode 项目包含在另一个项目中——链接器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4529133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com