xcode生成静态库.a

一、生成静态库

1.打开 Xcode 创建一个新的 Static Library 工程,取名applestudio
2.创建工程完毕后,简化目录结构

删除系统自动创建的同名类:applestudio.h和applestudio.m

把自己的代码复制进去,如例子:guiconnect.h 和 guiconnect.m

3.设置适配所有模拟器架构:

project -> buildSeting -> Build Active Architecture Only 设为 NO

4.提供的静态库为release版本的:

Edit Scheme->Run->Release/Debug分别进行编译

5.Command + B 运行工程进行编译打包,发现没有生成.a文件

解决:

设置生成路径:

项目 - TARGETS - 点击+号 - Add User-Defined Setting;

添加 CONFIGURATION_BUILD_DIR 然后在Value中设置好想要导出的路径地址;

如下:

6.重新Command + B 运行工程进行编译打包完成后,设置的路径下生成了.a文件和include文件夹

二、对静态库的使用

1.创建一个iOS项目,把生成的.a文件和include文件夹拖拽到项目根目录下,拖拽之前先把路径简化下,include文件夹下放.h文件和.a文件,如:

其中:.h的路径可以在编译前设置:

注:拖拽时勾选上如下:

2. 验证代码:
3.静态库程序调试:

创建一个iOS项目,然后点击加号创建一个静态库

还可以打断点调试

三、对生成的.a库cpu架构的验证和合成

1.终端查看静态库所支持的架构:终端 -> cd 进入库文件路径 -> lipo -info 库名

可以看到静态库只支持 arm64 x86_64

2.如果要同时支持模拟器和真机,请使用命令合成 .a 静态库:

lipo -create [name1.a 所在路径] [name2.a 所在路径] -output [newname.a]

参考:https://blog.51cto.com/u_16099252/7150796

相关推荐
gavin carter13 天前
一台电脑管理多个cocoapods账号
xcode·cocoapods
守城小轩15 天前
Chromium 136 编译指南 macOS篇:Xcode安装与配置(二)
macos·xcode·策略模式
march of Time16 天前
go在for循环中使用errgroup和channel进行并发处理
开发语言·golang·xcode
YungFan18 天前
Xcode26新特性与iOS26适配指南
ios·xcode
survivorsfyh21 天前
Xcode 16 集成 cocoapods 报错
macos·xcode·cocoapods
survivorsfyh21 天前
error: Sandbox: rsync(17136) deny(1) file-write-create
xcode·cocoapods
Q1422 天前
Cursor vs Xcode: 深入理解iOS开发工具链
xcode·cursor