美文网首页iOS开发
library not found for 的解决

library not found for 的解决

作者: 酷乐青春 | 来源:发表于2022-12-07 11:29 被阅读0次

    完美解决:"library not found for - "

    分析原因,解决问题

    在Xcode编译的时候,可能会遇到报这个错误"library not found for - ",这是为什么呢?

    由于我们在项目中使用了一些第三方的库,如百度的静态库。当Xcode在编译的时候却找不到这个库,所以我们要让Xcode知道这个库文件在哪里,这样在编译的时候就可以轻松的找到库了。

    解决方法:

    获取 库文件所在的文件路径 ,添加到Target的Build Settings界面,如图:

    若上述方法还未能解决,以下共有3种方法

    方法一:点击 XCode 工程文件,在 Build Phases 中查看 “ Link binary With Libraries” 如果不出所料,你应该能发现有一到数个的条目是用红色字体来显示的。 说明这些被工程引用的这些文件,其物理文件已经不处于之前所记录的地方了。 这种情况下,右键点击红色条目,选择 “Reveal in Project Navigator”, 此时大抵能在左侧栏中定位到缺失文件所在的路径,接下来就好办了,找到缺失的文件,挪回它应该待的地方。

    方法二:在工程的 Target 中选中要执行编译的某个target, 然后 “get info”,打开 Build 设置页面,在 “ Library Search Path” 中添加缺失链接库的所在文件夹的路径。

    方法三:关闭Xcode,在控制台打开到工程目录,用pod install 命令重新安装,成功后再打开Xcode编译项目。

    常见问题的处理方法

    总结1:library not found for -XXX 的问题有可能是你的某个库的连接引用有问题,解决的办法就是在项目的target里,选中Link Binary With Libraries 里的.a或framework 取消再加入,就可以了。

    总结2:warning:directory not found option 的问题可能是framework search paths 还有Library Search Paths 里面并没有这个路径,删除即可。

    总结3:duplicate就是重复的意思,那么看代码 要删除重复的openUDID,以及libwoa_two和sbjson冲突了,删除sbjson的点m即可.

    还一种情况:

    当我把.a文件放到Debug-iphonesimulator文件夹下,系统就运行成功了。

    转载自:https://www.cnblogs.com/chenweb/p/12830231.html

    相关文章

      网友评论

        本文标题:library not found for 的解决

        本文链接:https://www.haomeiwen.com/subject/othvfdtx.html