美文网首页
静态库的制作(.a)

静态库的制作(.a)

作者: HCL黄 | 来源:发表于2016-11-24 23:18 被阅读0次

    1.生成静态库大步骤

    • 创建项目时,直接选择静态库(.a)


      QQ20161122-0@2x.png
      B8DA65CB-7378-4F38-B37F-DC059B5E0BAD.png
      QQ20161122-2@2x.png
      QQ20161122-1@2x.png
      QQ20161122-12@2x.png
      QQ20161122-3@2x.png
      QQ20161122-4@2x.png
      QQ20161122-5@2x.png
      QQ20161122-6@2x.png
    • 设置需要暴露的头文件


      QQ20161122-7@2x.png
      QQ20161122-8@2x.png
      QQ20161122-9@2x.png
    • 在模拟器环境下编译(得到模拟器环境下的静态库),选择模拟器5s编译
    • 在真机环境下编译(得到真机环境下的静态库)

    2.静态库使用测试

    • 使用模拟器的静态库,拖入测试工程


      ![QQ20161122-11@2x.png](https://img.haomeiwen.com/i3487713/c504a268a74e4369.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
      • 使用5s模拟器进行测试,通过
      • 使用真机,编译,失败
      • 使用低型号模拟测试,失败
    • 测试结果分析

      • 模拟器下的静态库和真机下的静态库不能共用
      • 主要原因是模拟器和真机CPU架构不一样(各个模拟器型号之间架构也不一样)


        QQ20161124-1@2x.png
        QQ20161124-2@2x.png
    • 主要静态库所支持的架构

      • 不同机型的CUP,对应的架构不同
      • 模拟器:
        • 4s-5<i386>
        • 5s-6sPlus<x86_64>
      • 真机
        • 3gs----4s:armv7
        • 5/5c:armv7s(armv7兼容armv7s)
        • 5s----6sPlus:arm64
      • 查看静态库支持的架构
        • 打开终端--->lipo -info 路径
      • 怎样一次编译支持多个架构的静态库?
        • Bulid Settings -> Bulid Active -> NO

    相关文章

      网友评论

          本文标题:静态库的制作(.a)

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