iOS-动态库创建(详解)
https://blog.csdn.net/LisztCoder/article/details/78132147
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/LisztCoder/article/details/78132147
iOS的高级研发群:98787555
制作工具:Xcode7.2.1
话不多说直接上图。本人小白。大神意见请留言!不怠慢新手。所以此文章将会写的很详细!应该没有人刻意去创建一个真机使用或者模拟器使用的动态库吧。所以本文中直接创建通用的!
第一步,创建动态库工程
第二步,创建动态库工程名称
第三步,创建通用动态库文件>新建>目标> Aggretate
第四步,选中MyAggetate
第五步,创建脚本
第六步,编写通用脚本
具体代码为:
[objc] 查看纯文本
#设置目标文件夹和最终的框架产品。
#如果工程名称和Framework的目标名称不一样的话,要自定义FMKNAME
#例如:FMK_NAME =“MyFramework”
FMK_NAME = $ {} PROJECT_NAME
#安装目录将是框架的最终输出。
#以下行在当前项目的根文件夹中创建它。
INSTALL_DIR = $ {SRCROOT} / Products / $ {FMK_NAME} .framework
#工作目录将在框架创建后被删除。
WRK_DIR =构建
DEVICE_DIR = $ {} WRK_DIR /释放-的iPhoneOS / $ {} FMK_NAME .framework
SIMULATOR_DIR = $ {} WRK_DIR /释放-iphonesimulator / $ {} FMK_NAME .framework
#-configuration $ {CONFIGURATION}
清理和构建两种体系结构。
xcodebuild -configuration “Release” -target “$ {FMK_NAME}”- sdk iphoneos clean build
xcodebuild -configuration “Release” -target “$ {FMK_NAME}”- sdk iphonesimulator clean build
#清洗最老的
如果 [-d “$ {INSTALL_DIR}” ]
然后
rm -rf “$ {INSTALL_DIR}”
科幻
mkdir -p “$ {INSTALL_DIR}”
cp -R “$ {DEVICE_DIR} /” “$ {INSTALL_DIR} /”
#使用Lipo工具将二进制文件(i386 + armv6 / armv7)合并到一个通用最终产品中。
lipo -create“$ {DEVICE_DIR} / $ {FMK_NAME}” “$ {SIMULATOR_DIR} / $ {FMK_NAME}” - 输出 “$ {INSTALL_DIR} / $ {FMK_NAME}”
rm -r “$ {WRK_DIR}”
打开 “$ {INSTALL_DIR}”
第七步,切换到MyAggetate运行
如果不出异常会自动弹出动态报对应的文件夹
直到这里,创建动态库就完成了。接下来就是调试
第八步,添加动态库
现在导入后就可以运行了。由于本人留了联系方式所以就不做过多的解释。如有问题请加顶部QQ群询问!
————————————————
版权声明:本文为CSDN博主「LisztCoder」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/LisztCoder/article/details/78132147
iOS-动态库创建(详解)的更多相关文章
- JNI_Android项目中调用.so动态库实现详解
转自:http://www.yxkfw.com/?p=7223 1. 在Eclipse中创建项目:TestJNI 2. 新创建一个class:TestJNI.java package com.wwj. ...
- JNI_Android项目中调用.so动态库实现详解【转】
转自 http://www.cnblogs.com/sevenyuan/p/4202759.html 1. 在Eclipse中创建项目:TestJNI 2. 新创建一个class:TestJNI.ja ...
- Android项目中JNI技术生成并调用.so动态库实现详解
生成 jni方式有两种:一种是通过SWIG从C++代码生成过度的java代码:另一种是通过javah的方式从java代码自动生成过度的C++代码.两种方式下的步骤流程正好相反. 第一种方式:由于需要配 ...
- JNI_Android 项目中调用.so动态库实现详解
转自:http://www.yxkfw.com/?p=7223 1. 在Eclipse中创建项目:TestJNI 2. 新创建一个class:TestJNI.java package com.wwj. ...
- (笔记)Linux下的静态库和动态库使用详解
库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. 一.静态库和动态库的区别 1. 静态函数库 这类库的名字一般是libxxx.a:利用静态函数库编译成的文件比 ...
- 深入探讨Linux静态库与动态库的详解(转)
2.生成动态库并使用 linux下编译时通过 -shared 参数可以生成动态库(.so)文件,如下 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. 一.静 ...
- ios新特征 ARC详解
IOS ARC 分类: IOS ARC2013-01-17 09:16 2069人阅读 评论(0) 收藏 举报 目录(?)[+] 关闭工程的ARC(Automatic Reference Co ...
- STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解)
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) 前面 ...
- iOS 单元测试之XCTest详解(一)
iOS 单元测试之XCTest详解(一) http://blog.csdn.net/hello_hwc/article/details/46671053 原创blog,转载请注明出处 blog.csd ...
随机推荐
- chrome firefox浏览器屏蔽百度热搜
我是原文 操作 点击拦截元素,然后选择页面元素,添加
- alibaba-java-style-guide
(一) 命名规约 1.[强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例: _name / __name / $Object / name_ / name$ / O ...
- Django项目报错: 禁止访问(403),CSRF验证失败,相应中断
如果想要取消表单的CSRF防护,可以在模板上删除{% csrf_token %}, 并且在相应的视图函数中添加装饰器@csrf_exempt, 代码如下: from django.views.deco ...
- maven一直加载2.0.0.M7 的 config server 失败
之前学习的时候使用F版的SpringBoot管理项目依赖一直好好的,今天不知idea为何抽疯,一直加载失败,各种重启,清除,没用 只能像之前学习注册consul 时将F版的SpringBoot 改为G ...
- Java下载文件时文件名中的中文变成下划线,其他正常
将 utf-8 转换成 ISO8859-1 编码 response.addHeader("Content-Disposition", "attachment;filena ...
- pikachu平台搭建
1.将pikachu转移至htdocs 2.然后打开pikachu文件夹里的inc文件夹 3.里面对应的内容该成之前刚刚设置好的数据库服务器地址,用户名,密码和端口号 4.打开浏览器,输入http:/ ...
- linux下建立多级文件目录
linux下使用mkdir可以创建目录,使用mkdir -p参数就可以创建: mkdir -p /home/orale/duqiang1/duqiang2 如果父目录存在也不会报错.
- Spring AOP编程(一)-AOP介绍
1. AOP介绍 l 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术 ...
- mac登录窗口出现白框问题解决
昨天早上起床打开电脑,发现登录窗口的界面出现了大半边的白框,如下图,可是昨晚上关机前还是好好的,而且新电脑不至于啥也没干屏幕就出问题. 输入密码进入桌面,OK,不是屏幕的问题,那为什么会出现白框呢? ...
- js + jquery 实现分页区翻页
简单来说,情况是这样的,假如做好了对动漫每一集进行分页,如下图: 但当分页太多就会变得不能看,而且前后箭头也不能只是摆设. 想要得到类似这样效果: 网上搜了一会翻页相关的库没什么效果,也不太合适自己的 ...