当前位置: 首页 > news >正文

制作.a静态库 (封盒)

//云库房间
1.GitHub上创建开源框架项目须包含文件:
LICENSE:开源许可证;README.md:仓库说明文件;开源项目;(登录GitHub官网)新建云库1
2.在这里插入图片描述
云仓储库构建成功(此时云库中没有内容三方框架)!!!
3.在这里插入图片描述
4.在这里插入图片描述5.在这里插入图片描述

//遵循着层次结构的内容(.a静态库)
6.创建项目包(目标层.a静态库) (只支持OC不支持swift)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
/Users/haijunyan/Desktop/CustomKit/StaticLibTools/StaticLibTools
在这里插入图片描述
cd /Users/haijunyan/Desktop/CustomKit/StaticLibTools/StaticLibTools
pod init
pod install
在这里插入图片描述

7.添加.a静态库的目标内容
StaticLibTools.h
#import <UIKit/UIKit.h>
请添加图片描述
在这里插入图片描述
Xcode聚焦于BuildPhases配置窗口,选择Editor\Add Build Phase\Add Headers Build Phase
在这里插入图片描述
异常:
请添加图片描述
在这里插入图片描述
8.添加.a静态库的配置
Public Headers Folder Path
include/$(PROJECT_NAME)
在这里插入图片描述
异常:
在这里插入图片描述
处理:
Public Headers Folder Path
在这里插入图片描述
在这里插入图片描述
Dead Code Stripping
Strip Debug Symbols During Copy
Strip Style设置为Non-Global Symbols
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
9.静态库.a对应的架构型项目的构建已完成
请添加图片描述
Generic iOS Device进行编译运行请添加图片描述
任意Simulator(此处选择Simulator iPhone11)进行编译运行
请添加图片描述
请添加图片描述
支持模拟器的.a文件
在这里插入图片描述
支持真机的.a文件
在这里插入图片描述
StaticLibTools.h
在这里插入图片描述
10.合并静态库

模拟器静态库.a文件和真机静态库.a文件 合并 通用型静态库.a文件
在这里插入图片描述
lipo -create /Users/haijunyan/Desktop/arepo/true/libStaticLibTools.a /Users/haijunyan/Desktop/arepo/simulator/libStaticLibTools.a -output /Users/haijunyan/Desktop/arepo/all/libStaticLibTools_all.a
请添加图片描述
通用型静态库.a文件即libStaticLibTools_all.a


11.静态库使用
导入静态库libStaticLibTools.a文件和.h头文件至待引用项目内
在这里插入图片描述
请添加图片描述
//调用函数
[StaticLibTools testDemo];

//静态库不兼容即需要合并静态库
在这里插入图片描述

备注:
https://blog.csdn.net/yanhaijunyan/article/details/133883652?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22133883652%22%2C%22source%22%3A%22yanhaijunyan%22%7D

https://blog.51cto.com/u_15551344/5645802
https://www.jianshu.com/p/5cc156ea6f80

http://www.lryc.cn/news/196735.html

相关文章:

  • 一台服务器,一个新世界
  • keep-alive 是 Vue 的一个内置组件,用于缓存其他组件的实例,以避免重复渲染和销毁,它可以在需要频繁切换的组件之间提供性能优化
  • (八)Python类和对象
  • 黑客利用人工智能窃取医疗数据的 7 种方式
  • OJ第四篇
  • L2-022 重排链表
  • css 特别样式记录
  • 多数元素[简单]
  • 34 个高质量免费教育资源
  • 基础课5——语音合成技术
  • 安全事件报告和处置制度
  • java干掉 if-else
  • 29 Python的pandas模块
  • 树叶识别系统python+Django网页界面+TensorFlow+算法模型+数据集+图像识别分类
  • 【问题解决:配置】解决spring mvc项目 get请求 获取中文字符串参数 乱码
  • python每日一练(9)
  • JVM第十四讲:调试排错 - Java 内存分析之堆内存和MetaSpace内存
  • 【1day】泛微e-office OA SQL注入漏洞学习
  • 线上问题:所有用户页面无法打开
  • RabbitMQ和spring boot整合及其他内容
  • iperf3交叉编译
  • TARJAN复习 求强连通分量、割点、桥
  • python实现批量数据库数据插入
  • python安装,并搞定环境配置和虚拟环境
  • Flink 的集群资源管理
  • STM32学习笔记
  • Java应用性能问题诊断技巧
  • 监控系列(六)prometheus监控DMHS操作步骤
  • SLAM从入门到精通(dwa速度规划算法)
  • 嵌入式实时操作系统的设计与开发(aCoral线程学习)