关闭

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

25175人阅读 评论(0) 收藏 举报
分类:

测试环境:

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/.…文件夹中



0
0

  相关文章推荐
猜你在找
深度学习基础与TensorFlow实践
【在线峰会】前端开发重点难点技术剖析与创新实践
【在线峰会】一天掌握物联网全栈开发之道
【在线峰会】如何高质高效的进行Android技术开发
机器学习40天精英计划
Python数据挖掘与分析速成班
微信小程序开发实战
JFinal极速开发企业实战
备战2017软考 系统集成项目管理工程师 学习套餐
Python大型网络爬虫项目开发实战(全套)
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:146966次
    • 积分:1369
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:5篇
    • 译文:0篇
    • 评论:16条
    文章分类
    最新评论