zoukankan      html  css  js  c++  java
  • 升级Cocoapods引起的Mantle库找不到的问题及解决方法

    年前升级了Cocoapods库,从0.39升级到了1.2.0-beta版,然后用模拟器和真机测试都是没有问题的,均可以成功编译。今天测试人员要测试包,准备archive打包时,却提示:ld: library not found for -lMantle,瞬间感觉哪儿不对,明明可以运行,真机测试也没问题,怎么打包出现找不到Mantle库的问题,然后就开始分析。

    1. 升级Cocoapods引起的问题?

    首先到Cocoapods官网,找到Troubleshooting,发现对该问题有解决办法,根据提示步骤修改,在Edit Scheme->Build里,添加静态库Mantle,编译发现问题依然存在,看来不是静态库的问题。紧接着把后面的方法也试了一遍,还是无果,排除升级Cocoapods的影响。

    2. Pod工程的配置问题?

    这种方法是在stackoverflow看到的,把Pods工程里:Build Settings->Build Active Architectures Only设置为NO,问题还是存在,喝口水,继续找问题。

    3. 链接引用有问题?

    于是在Build Phases->Link Binary With Libraries里添加Mantle.framework库,满怀期待地看着又一次出错,问题依然没有解决,又喝了两口水,继续找问题。

    4. 把Mantle从本地库改成Cocoapods管理过程有问题?

    觉得应该是修改库的管理过程中,本地的链接引用没有被删除,导致在打包时无法找到Mantle库。于是立即到:Build Settings->Other Linker Flags里,把-lMantle删除掉,打包编译成功,顺利解决了问题。


    回顾问题的解决方法,我猜测是新版的Xcode在链接本地库时,没有从Pods工程里搜索导致的问题,具体是新版Xcode没有主动搜索,还是升级后的Cocoapods限制了Other Linker Flags的链接,暂时没搞明白,以后搞明白了,再来修改一下。

  • 相关阅读:
    博客园页面设置(转载)
    正则表达式30分钟入门教程 (转载)
    如何写出优雅的代码
    centos7 nginx+php5.6+mysql安装与配置
    git 进阶
    js 异步解决方案
    行动派
    unicode 与 utf-8
    bower command not found--windows
    click事件细节
  • 原文地址:https://www.cnblogs.com/fishbay/p/7209674.html
Copyright © 2011-2022 走看看