制作模拟器和真机通用静态库
2015-11-25 13:16
232 查看
通常在项目中使用静态库的时候都会有两个版本,一个用于模拟器,一个用于真机,因为Mac和iPhone的CPU不同,才造成了这种情况。
为了模拟器与真机之间切换调试的方便,制作通用版本非常有必要。
现在有两个版本的静态库libSQLite_i386.a(模拟器)与libSQLite_arm.a(真机)。
1、打开终端,进入到这两个文件所在的目录;
2、执行:lipo -create libSQLite_i386.a libSQLite_arm.a -output libSQLite.a,这时文件就会多出libSQLite.a,这个文件即为通用静态库。
我们可以lipo -info libSQLite.a命令,查看是否是通用的。
可以发现libSQLite.a的大小为libSQLite_i386.a与libSQLite_arm.a之和,建议发布的时候将静态库替换成真机版。
那lipo到底是什么呢
lipo源于mac系统要制作兼容powerpc平台和intel平台的程序。
lipo 是一个在 Mac OS X中处理通用程序(Universal Binaries)的工具。现在发售或者提供下载的许多(几乎所有)程序都打上了“Universal”标志,意味着它们同时具有 PowerPC和 Intel 芯片能够处理的代码。不过既然你可能不在意其中的一个,你就能够使用 lipo来给你的程序“瘦身”。比如你想让“便笺”应用程序只包含 Intel(i386)的代码:
cd /Applications
lipo Stickies.app/Contents/MacOS/Stickies -thin i386 -output Stickies.app/Contents/MacOS/Stickies.i386
cd Stickies.app/Contents/MacOS/
rm Stickies
mv Stickies.i386 Stickies
转自 http://blog.csdn.net/jinglijun/article/details/8276089
为了模拟器与真机之间切换调试的方便,制作通用版本非常有必要。
现在有两个版本的静态库libSQLite_i386.a(模拟器)与libSQLite_arm.a(真机)。
1、打开终端,进入到这两个文件所在的目录;
2、执行:lipo -create libSQLite_i386.a libSQLite_arm.a -output libSQLite.a,这时文件就会多出libSQLite.a,这个文件即为通用静态库。
我们可以lipo -info libSQLite.a命令,查看是否是通用的。
可以发现libSQLite.a的大小为libSQLite_i386.a与libSQLite_arm.a之和,建议发布的时候将静态库替换成真机版。
那lipo到底是什么呢
lipo源于mac系统要制作兼容powerpc平台和intel平台的程序。
lipo 是一个在 Mac OS X中处理通用程序(Universal Binaries)的工具。现在发售或者提供下载的许多(几乎所有)程序都打上了“Universal”标志,意味着它们同时具有 PowerPC和 Intel 芯片能够处理的代码。不过既然你可能不在意其中的一个,你就能够使用 lipo来给你的程序“瘦身”。比如你想让“便笺”应用程序只包含 Intel(i386)的代码:
cd /Applications
lipo Stickies.app/Contents/MacOS/Stickies -thin i386 -output Stickies.app/Contents/MacOS/Stickies.i386
cd Stickies.app/Contents/MacOS/
rm Stickies
mv Stickies.i386 Stickies
转自 http://blog.csdn.net/jinglijun/article/details/8276089
相关文章推荐
- 雅虎
- git记住用户名密码
- jquery基础dome(判断复选框是否被选中)
- 学习MCGS之感想
- Java反射技术概述
- C# 如何判断字符串中是否包含另一个字符串?
- CUDA by Example 源代码
- web.xml 中的listener、 filter、servlet 加载顺序及其详解
- xib storyboard 中如何给view 添加 边框
- 【转】10 条提升 Android 性能的建议
- Java――JavaWeb项目开发的总结
- 《疯狂Android讲义》学习笔记一
- XMLHttpRequest基础
- 记录——《C Primer Plus (第五版)》第十一章编程练习第二题
- iOS时间戳与日期互转
- 关于Android Studio运行出现HAX is not working 的解决办法
- 读写文件的代码
- js实现动画效果
- ABAP 动态创建内表
- 神奇的SSH tunnel