iphone开发之用lipo合并模拟器库和真机库,发布一个通用的静态库
转载自:http://blog.csdn.net/arthurchenjs/article/details/6044616
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 来给你的程序“瘦身”。比如你想让“便笺”应用程序只包含 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
拓展阅读:
1、ssh
这颗小小的“宝石”包含于 Mac OS X 的每个版本,其开发的最初目的只是为了取代 rsh/rlogin,现在却成为 Linux/Unix(包括 Mac OS X)社区不可缺少的一部分。openssh 的主要作用就是安全的远程管理。打开系统预置,点击“共享”,勾选“远程登录”,即可启动 Mac OS X 的内置 SSH 服务。现在假设你想连接你不在身边的电脑,可以借助类似 PuTTY(Windows 平台)的客户端,或者在 Mac
OS X 的终端窗口中输入“ssh”连接你 Mac 的 IP 地址。以你的用户名和密码登录之后,你便获得了 Mac OS X 命令行的完整操作权。除此之外,openssh 还有许许多多应用,有些可是相当了不起的。我就很喜欢用 ssh 搭个 SOCKS 代理,这样我在公共地点也能安全上网冲浪。在Mac 上使用 ssh 的更多技巧,可以浏览本页!
2、top
top 是另一个长期为 Linux/Unix 社区使用的经典工具,使用它只需打开终端输入“top”。眨眼之间,你就会看见一个满是文字的窗口——每一个正在你的 Mac 上运行的进程都会被列出。如果我的 Mac 速度变慢,top 是让我知道什么正在发生的首选。点击这里,查看 top 的完整概述。
3、lsbom
如果你偶然在某个 Mac 站点(比如 OS X Daily)发现一件够酷够新的软件,忍不住想安装,而你又犹豫不决,那么 lsbom 对你大有好处。通过它,你可以测试 Mac OS X 安装包(.pkg)的内容,并且清楚了解究竟会有什么被塞进你心爱的文件系统。要使用 lsbom,你需要启动终端,并进入 .pkg 文件所在的目录。如果你的安装包形式是 .dmg,可能需要把其中的 .pkg文件拷贝到桌面上,然后进入 Desktop 目录。一旦确认 .pkg 文件的位置,输入“lsbom .pkg/Contents/Archive.bom>
| more”。哇!你所看见的就是新程序将会安装的完整文件列表。
4、say hello(黑苹果就算了)
这个命令是 Mac OS X 独一无二的,比其他任何一个都更有趣。打开终端输入“say hello”试试吧!
iphone开发之用lipo合并模拟器库和真机库,发布一个通用的静态库的更多相关文章
- iPhone开发之UIScrollView初步
来源:http://blog.csdn.net/htttw/article/details/7891396 iPhone开发之UIScrollView初步 今天我们初步介绍以一下iPhone开发中的U ...
- Xcode6.1标准Framework静态库制作方法。工程转Framework,静态库加xib和图片。完美解决方案。
http://www.cocoachina.com/bbs/read.php?tid-282490.html Xcode6.1标准Framework静态库制作方法.工程转Framework,静态库加x ...
- Xcode 5.1 编译模拟器以及真机都能使用的静态库
Xcode 5.1.dmg 下载地址 http://pan.baidu.com/s/1jGJpKm6 1.新建 Framework & Library 工程 我起名叫ShowInfo,下面为其 ...
- iOS 解决一个因三方静态库冲突产生的duplicate symbol的问题
最近在开发项目时编译三方.a时出现了冲突,原因是存在duplicate symbol. <1>模拟器编译时,应用的即时通讯模块采用的三方库(容联云),和视频监控模块采用的三方库(海康威视) ...
- iPhone开发之在UINavigationBar上使用UISegmentedControl制作
UISegmentedControl *segmentedControl=[[UISegmentedControl alloc] initWithFrame:CGRectMake(80.0f, 7.0 ...
- iOS开发之 XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)
参考:http://mobile.51cto.com/iphone-455500.htm XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效) 前提:设备已经越狱 目前在XCode上开发 ...
- Web开发之tomcat配置及使用(环境变量设置及测试,一个简单的web应用实例)
Tomcat的配置及测试: 第一步:下载tomcat,然后解压到任意盘符 第二步:配置系统环境变量 tomcat解压到的D盘 (路径为: D:\tomcat), 配置环境变量: 启动tomcat需要两 ...
- XMLParser解析xml--内容源自网络(在静态库中不能用GDATA来解析,因为静态库不能加动态库)
</Books> 从其文档结构我们可以看出,要定义一个Book实体类描述具体的书籍信息,其中用于存储的相关xml文档元素的实例变量与对应元素同名(本例:title.author.summa ...
- iOS开发~制作同时支持armv7,armv7s,arm64,i386,x86_64的静态库.a
一.概要 平时项目开发中,可能使用第三方提供的静态库.a,如果.a提供方技术不成熟,使用的时候就会出现问题,例如: 在真机上编译报错:No architectures to compile for ( ...
随机推荐
- Objective C静态代码扫描和代码质量管理 OClint + SonarQube
OClint是针对C, C++及Objective C代码的静态扫描分析工具,而SonarQube是一个开源的代码质量管理平台.本文将实现将OClint的扫描结果导入到SonarQube中,已实现对O ...
- 【转】删除已经存在的 TFS Workspace
删除已经存在的 TFS Workspace 分类: TFS2010-03-03 16:59 1239人阅读 评论(2) 收藏 举报 serverpathcommandcachefilegoogle 工 ...
- centos下 Apache、php、mysql默认安装路径
centos下 Apache.php.mysql默认安装路径 http://blog.sina.com.cn/s/blog_4b8481f70100ujtp.html apache: 如果采用RPM包 ...
- CSS超出2行省略号
overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; line- ...
- oracle 查詢表字段明細、字段注釋、表註釋
查詢表字段明細 select column_name,data_type,data_length,DATA_PRECISION ,DATA_SCALE from all_tab_columns wh ...
- lvs-dr模式原理详解和可能存在的“假负载均衡”
原文地址: http://blog.csdn.net/lengzijian/article/details/8089661 lvs-dr模式原理 转载注明出处:http://blog.csdn.net ...
- RFID开发利器 proxmark3
Proxmark3 介绍 Proxmark3是由Jonathan Westhues设计并且开发的开源硬件,其主要用RFID的嗅探.读取以及克隆等的操作.其官方网站为:Jonathan Westhues ...
- JS原生方法实现jQuery的ready()
浏览器加载页面的顺序: 1. 解析HTML结构 2. 加载外部脚本和样式表文件 3. 解析并执行脚本代码 4. 构造HTML DOM模型==ready() 5. 加载图片等组件 6. 页面加载完毕== ...
- 05_android入门_GET方式实现登陆(在控件上显示服务端返回的内容)
当点击登陆之后,怎么把server端返回的数据,写到指定的控件上尼?,在android怎么实现尼?以下我们通过详细的代码进行分析和实现,希望能对你,在学习android知识上有所帮助. 以下通过代码说 ...
- Codeforces Round #313 (Div. 1) A. Gerald's Hexagon 数学题
A. Gerald's Hexagon Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/559/p ...