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

相关推荐
大熊猫侯佩1 天前
思过崖上学「 subprocess 」:令狐冲的 Swift 6.2 跨平台进程心法
spm·xcode·进程控制·platform·subprocess·output·swift 6.2
__基本操作__1 天前
西电25年A测 语音识别机械臂方案与教程
语音识别·机械臂·xcode·西电a测
疯笔码良3 天前
【Flutter】flutter安装并在Xcode上应用
flutter·macos·xcode
lichong9514 天前
【Xcode】Macos p12 证书过期时间查看
前端·ide·macos·证书·xcode·大前端·大前端++
_阿南_5 天前
flutter在Xcode26打包的iOS26上全屏支持右滑的问题
flutter·ios·xcode
驰羽7 天前
[GO]Go语言泛型详解
开发语言·golang·xcode
小瓶盖_tl9 天前
在Mac上安装CocoaPods问题处理
macos·xcode·cocoapods
zzywxc78713 天前
AI 在金融、医疗、教育、制造业等领域都有广泛且深入的应用,以下是这些领域的一些落地案例
人工智能·金融·自动化·prompt·ai编程·xcode
19岁开始学习14 天前
Go语言中的Zap日志库
开发语言·golang·xcode
Everbrilliant8916 天前
Xcode上编译调试ffmpeg
macos·ffmpeg·xcode·ffmpeg源码编译工具·xcode调试ffmpeg源码·ffmpeg工具环境变量配置