Xcode .a静态库编译

作为一个正在艰难自学ios开发的菜菜菜鸟,记录一些学习中遇到的小问题

在不同的模拟器下,编译出来的库构架不同

当模拟器为iOS device时,编译出来的库基于arm7架构


在terminal下可通过命令找到该.a库的目录,并使用lipo -info 命令查看其基本信息

cd /Users/moomo/Library/Developer/Xcode/DerivedData/wifiRecog-esvgyqexixvbosdvhhczjnjuobam/Build/Products/Debug-iphoneos

lipo -info libwifiRecog.a



注意:在Debug模式下编译出来的库所在的文件夹名以Debug-开头,在Release模式下编译出来的库所在的文件夹名以Release-开头

模式可通过Product -> Scheme -> Edit Scheme -> Build Configuration改变




当模拟器为iOSxx simulator时,编译出来的库基于i386架构


在terminal下可通过命令找到该.a库的目录,并使用lipo -info 命令查看其基本信息

cd /Users/moomo/Library/Developer/Xcode/DerivedData/wifiRecog-esvgyqexixvbosdvhhczjnjuobam/Build/Products/Debug-iphonesimulator

lipo -info libwifiRecog.a


这两个库一个用于真机运行,一个用于模拟器运行,可以利用lipo -create命令将其打包成一个.a文件

lipo -create lib1.a lib2.a -output libAll.a


合并后得到的库即支持arm7又支持i386

版权声明:本文为may0324原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。