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

相关推荐
Code季风8 天前
深入理解 Gin 框架的路由机制:从基础使用到核心原理
ide·后端·macos·go·web·xcode·gin
0wioiw013 天前
Apple基础(Xcode⑤-Flutter-Singbox-AI提示词)
flutter·macos·xcode
0wioiw014 天前
Apple基础(Xcode②-Flutter结构解析)
flutter·macos·xcode
0wioiw014 天前
Apple基础(Xcode④-Flutter-Platform Channels)
flutter·macos·xcode
胡桃夹夹子15 天前
xcode swift项目运行、连接真机运行报错,引入文件夹失败
cocoa·xcode·swift
我现在不喜欢coding17 天前
混乱的scheme、.xcconfig、build Settings梳理的清清楚楚
ios·xcode
0wioiw018 天前
Apple基础(Xcode①-项目结构解析)
ide·macos·xcode
名字不要太长 像我这样就好18 天前
【iOS】weak修饰符
macos·ios·objective-c·cocoa·xcode
Magnetic_h19 天前
【iOS】类和分类的加载过程
笔记·学习·ios·objective-c·xcode