iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – Xcode – 获取force_load使用相对路径大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

链接到Xcode项目时,某些库需要-all_load链接器标志。但是,如果库之间存在符号冲突,则会导致链接器错误。解决方案是使用-force_load,这有效地允许您在某些库中使用-all_load,但不能在其他库上使用-all_load。 然而,这反过来又导致了一个新的问题,至少对我而言。每当我使用与库的相对路径的-force_load时,链接器总是发现库与本身之间的符号冲突。看来,链接器认为具
链接到Xcode项目时,某些库需要-all_load链接器标志。但是,如果库之间存在符号冲突,则会导致链接错误解决方案是使用-force_load,这有效地允许您在某些库中使用-all_load,但不能在其他库上使用-all_load。

然而,这反过来又导致了一个新的问题,至少对我而言。每当我使用与库的相对路径的-force_load时,链接器总是发现库与本身之间的符号冲突。看来,链接器认为具有绝对路径的库和具有其相对路径的库是不同的库,因此发现库与其本身之间存在冲突。

我可以通过使用带有该标志的绝对路径来避免这种情况。但这并不是一个很好的解决方案,因为方便的是将库的源代码保存在我的文档目录中。但是在其他机器上,文档目录的路径将不同。

问题:任何人都可以使用force_load来使用图书馆的相对路径?

编辑:有关背景信息,请参阅this question

@H_301_18@解决方法
使用Xcode 4,如果将库项目包含在应用程序项目中,则可以将其添加到其他链接器标志:

-force_load $(BUILT_PRODUCTS_DIR)/<library_name.a>

您仍然需要依赖,您还需要在框架和库的链接阶段列表中添加库。

编辑:苹果现在说一些Xcode 4版本,你可以简单地使用这个链接器标志:“-ObjC”来获取类别的库以正确加载。那个标志在Xcode 5中对我来说很好。人们还在投票这个答案,但我怀疑-ObjC标志是现在最好的解决方案。

大佬总结

以上是大佬教程为你收集整理的iphone – Xcode – 获取force_load使用相对路径全部内容,希望文章能够帮你解决iphone – Xcode – 获取force_load使用相对路径所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。