iphone开发之用lipo合并模拟器库和真机库,发布一个通用的静态库-阿里云开发者社区

开发者社区> 余二五> 正文

iphone开发之用lipo合并模拟器库和真机库,发布一个通用的静态库

简介:
+关注继续查看

lipo

lipo –create Release-iphoneos/libiphone.a Debig-iphonesimulator/libiphone.a –output libiphone.a

看到这样的命令行,你会怎样理解呢。

很简单,我将模拟器和设备的静态库文件合并成一个文件输出了,以后在发布可以库的时候不用发一个模拟器版的和一个真机版的了,这样子的一个库可以在编译的时候自动识别需要连接的库。

 

lipo到底是什么呢

lipo源于mac系统要制作兼容powerpc平台和intel平台的程序。

lipo 是一个在 Mac OS X 中处理通用程序(Universal Binaries)的工具。现在发售或者提供下载的许多(几乎所有)程序都打上了“Universal”标志,意味着它们同时具有 PowerPC  Intel 芯片能够处理的代码。不过既然你可能不在意其中的一个,你就能够使用 lipo 来给你的程序瘦身。比如你想让便笺应用程序只包含 Inteli386)的代码:

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

 

 

拓展阅读: 1ssh

这颗小小的宝石包含于 Mac OS X 的每个版本,其开发的最初目的只是为了取代 rsh/rlogin,现在却成为Linux/Unix(包括 Mac OS X)社区不可缺少的一部分。openssh 的主要作用就是安全的远程管理。打开系统预置,点击共享,勾选远程登录,即可启动 Mac OS X 的内置 SSH 服务。现在假设你想连接你不在身边的电脑,可以借助类似 PuTTYWindows 平台)的客户端,或者在 Mac OS X 的终端窗口中输入“ssh”连接你 Mac  IP 地址。以你的用户名和密码登录之后,你便获得了 Mac OS X 命令行的完整操作权。除此之外,openssh 还有许许多多应用,有些可是相当了不起的。我就很喜欢用 ssh 搭个 SOCKS 代理,这样我在公共地点也能安全上网冲浪。在Mac 上使用 ssh 的更多技巧,可以浏览本页

2top

top 是另一个长期为 Linux/Unix 社区使用的经典工具,使用它只需打开终端输入“top”。眨眼之间,你就会看见一个满是文字的窗口——每一个正在你的 Mac 上运行的进程都会被列出。如果我的 Mac 速度变慢,top 是让我知道什么正在发生的首选。点击 这里,查看 top 的完整概述。

3lsbom

如果你偶然在某个 Mac 站点(比如 OS X Daily)发现一件够酷够新的软件,忍不住想安装,而你又犹豫不决,那么 lsbom 对你大有好处。通过它,你可以测试 Mac OS X 安装包(.pkg)的内容,并且清楚了解究竟会有什么被塞进你心爱的文件系统。要使用 lsbom,你需要启动终端,并进入 .pkg 文件所在的目录。如果你的安装包形式是 .dmg,可能需要把其中的 .pkg 文件拷贝到桌面上,然后进入 Desktop 目录。一旦确认 .pkg 文件的位置,输入“lsbom .pkg/Contents/Archive.bom> | more”。哇!你所看见的就是新程序将会安装的完整文件列表。

4say hello(黑苹果就算了)

这个命令是 Mac OS X 独一无二的,比其他任何一个都更有趣。打开终端输入“say hello”试试吧!










本文转自 arthurchen 51CTO博客,原文链接:http://blog.51cto.com/arthurchen/577912,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
用Android模拟器也可以开发和测试NFC应用
       从Android2.3开始支持NFC。不过NFC应用只能在Android手机(或平板电脑)上测试和开发,而且Android手机还必须有NFC芯片。
935 0
asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
开发web项目时需要安装IIS,在安装好IIS的Windows7本上发布asp.net网站时,web程序已经映射到了本地IIS上,但运行如下错误提示“处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“Man...
822 0
IDA反汇编/反编译静态分析iOS模拟器程序(四)反汇编的符号信息与改名
首先看看windows IDA和xcode的反汇编有什么不同。因为不确定直接分析UIKit的代码会不会有法律问题,还是自己写个例子吧。分析UIKit的时候因为没有完整的debugging symbols,所以得到的反汇编信息会比自己写的代码较少。
848 0
IDA反汇编/反编译静态分析iOS模拟器程序(二)加载文件与保存数据库
启动windows版的IDA,在Quickstart界面点击New,弹出一个对话框选择文件。也可以按取消后再把文件拖进IDA。由于Mac版的IDA没注册,没有save功能,所以只好先把Mac上的东西拷贝到windows再打开了。
1056 0
IDA反汇编/反编译静态分析iOS模拟器程序(五)F5反编译
反编译是IDA最让人振奋的功能,它的本质是IDA的一个插件,不过会被当做hex-rays的另一个产品。既然是产品,那当然就另外收费,demo版是没有的。
1056 0
xcode反汇编调试iOS模拟器程序(七)Debug与Release的区别
首先自己写一段代码,加好断点,分别在Build Configuration为Debug和Release下运行,查看反汇编 - (void)test { UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(10.
738 0
+关注
20382
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载