iOS中创建,使用动态库(dylib)

测试环境:

xcode4.5.2   Mac OS X 10.8.2

重要:由于苹果不支持自己创建动态库,所以这里需要替换两个文件

1:iOS Device 需要替换的文件

替换路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Specifications/

2:iOS 模拟器 需要替换的文件

替换路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Specifications

具体可参照:http://blog.iosplace.com/?p=33    或者  http://www.cocoachina.com/bbs/simple/?t129814.html  


替换完成后重启Xcode



创建动态库


1:打开Xcode,新建项目,选择OS X --> Cocoa Library -->输入动态库的相关信息






















2:这样,动态库已经创建好,但是由于此项目是基于Mac OS X创建的,所以这里要将project的相关设置作修改


     1:Base  设置成 SDK iOS6.0


     2:Architectures  设置成 standrand (armv7 armv7s)


     3:Installation Directory  设置成 @executable_path/


     4:Mach-O Type  设置成 Dynamic Library


     5:Executable Prefix 设置成


     6:打开项目的project.pbxproj(文本编辑器打开)文件,在编辑器中将producttype 的值修改为 com.apple.product-type.library.dynamic


     7:选择合适的证书文件


3:将debug改为no





4:在动态库的相关类中添加一些测试方法

5:删除多余的framework文件。值添加Foundation.framework文件




 






Xcode--->Preferences--->Locations--->Advanced---->



























这样基本就可以编译dylib了,但是这里还有一个需要注意的地方。

编译证书的选择


编译分为 设备编译(iOS Device) 及 模拟器编译(iPad/iPhone Simulator)

在选择设备编译的时候,一定要选择某个有效的开发者证书。否则编译会出错。

相反,选择模拟器编译的时候,不需要选择证书(如果选了证书,也会报错)。


如果一切正常,那么在编译后的文件会出现在项目文件夹的Build/Products/.…文件夹中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值