解决 ld: library not found for -lP

作者: ray_xia | 来源:发表于2015-12-01 10:46 被阅读16840次

    最近计划把公司的项目重构一下,第一步就是引入CocoaPods(以下简称pods)来管理第三方库。但是这第一步就不是太顺利。
    首先建好Podfile,并在命令行中输入pod install,结果报以下错误

    [!] The XXX target overrides the 'OTHER_LDFLAGS' build setting defined in  
    'Pods/Target Support Files/Pods/Pods.debug.xcconfig'.  
     This can lead to problems with the CocoaPods installation  
        - Use the '$(inherited)' flag, or
        - Remove the build settings from the target.
    
    [!] The 'SubWayWifi [Release]' target overrides the 'OTHER_LDFLAGS' build setting defined in 
    'Pods/Target Support Files/Pods/Pods.release.xcconfig'. 
    This can lead to problems with the CocoaPods installation
        - Use the '$(inherited)' flag, or
        - Remove the build settings from the target.
    

    现在打开有pods建好的workspace文件,尝试编译,会报ld: library not found for -lPods错误,原因就是工程里面的设置项覆盖了pods中xcconfig中的设置。解决办法就是在build setting->other linker flag中,加上$(inherited)即可。

    OK,重新安装pod试试,由于我们已经进行过一次安装,所以本次只用更新一次即可,在命令行中输入pod update,现在没有报任何错误。但是当我尝试编译工程的时候,又报了一个错误:ld: library not found for -lReactiveCocoa。咋又找不到相应的第三方库了呢?好吧,继续查资料。

    最后还是在cocoapods的官网Troubleshooting找到的解决办法。在Edit Scheme中,找到Build项,点击+号,找到Pods静态库,点击Add。再尝试编译,编译通过。

    相关文章

      网友评论

      • LFDevJourney:如果使用了CocoaPods,应该使用 .xcworkspace打开工程而不是 .xcodeproj。 可以参考 [Xcode - ld: library not found for -lPods](https://stackoverflow.com/q/23539147/6521116)
      • 独乐乐:解决了困扰我一周的问题。。
      • a浮生若梦a:搞了老长时间,还是 library not found for -lPods报错,最后我看到项目中的Frameworks里面的libPods.a有俩,有一个是之前的,名字也不太一样,我删除一个就可以了,留个言给以后的朋友一个帮助,
      • scue:我之前按照react native code push的配置,添加了Staging,我在Staging编译的时候死活编译不过,使用Release进行编译就OK了。
      • LV大树:我打到原因了,是因为改过项目名,导致有两个,删除其中一个就可以了。
      • 夜幕青雨:各种方法都试了,解决不了。疯了快!什么狗屎编译器啊
      • 十一岁的加重:已经成功,
        解决办法就是在build setting->other linker flag中,加上$(inherited)即可。
        十一岁的加重:@崠崠 每次pod install都会覆盖,所以应该是target的
        崠崠:是在项目中的bulid setting中加 还是在pod的加
      • edabc0543539:选模拟器编还会出现
      • Hustlion:谢谢啦,`$(inherited)`是关键。
      • 日拱一卒wu:ld: library not found for -lPods错误 不管用。。。。我也要疯了 弄了好几天了
        日拱一卒wu:@Dalvk丶藏蓝 Mac的新系统OS X EI 更改了cocoapods路径,你重新把gem cocoa pods安装一下,http://stackoverflow.com/questions/30812777/cannot-install-cocoa-pods-after-uninstalling-results-in-error/30851030#30851030
        日拱一卒wu:@Dalvk丶藏蓝 没解决,如果原工程没有用cocopod那重新在原工程单独添加cocopod试一下,如果是最近添加第三方库才出现的,那就Podfile里删除试一下,你也可以去stack overflow查找吧
        Purlible:@Wxwldu 最红解决了没啊 我也遇到了这个问题啊 着急!
      • 等这姑娘老在我心里:没有起到作用 连接上的方法也都不管用。。。我要疯了
        等这姑娘老在我心里:@Dalvk丶藏蓝 没,重新安装下试试吧
        Purlible:@等这姑娘老在我心里 话说 解决了没有啊 求告知啊!
      • 请叫我李大圣:非常感谢
      • bubble1990:太感谢了

      本文标题:解决 ld: library not found for -lP

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