登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> CLQ工作室开源代码 >> 主题: xcode 静态库制作说明[含依赖子项目子工程使用方法]     [回主站]     [分站链接]
标题
xcode 静态库制作说明[含依赖子项目子工程使用方法]
clq
浏览(268) + 2021-07-09 14:01:16 发表 编辑

关键字:

[2021-11-11 08:35:28 最后更新]
xcode 静态库制作说明[含依赖子项目子工程使用方法]

1.先在源码树中选择项目(基本上就是树的第一个节点)。

2.在主菜单 "Editor" -> "Add Target..." 点击。就可以选择增加一个静态库(或者是别的什么了)。
另外要注意的是,先跟不同的源码对象,"Editor" 下的菜单是不同的。

3.可将项目作为其他项目的依赖一起编译。这里面操作比较复杂,有好几个技巧。
参考 https://blog.csdn.net/jjjjjj123321/article/details/78082907
项目中加入子项目后要引用子项目中的函数,似乎只能是先在子项目中加新一个静态库。
然后将这个静态库生成的源码目录树中的 Products 中的 .a 文件拖放到项目的编译属性
"Build Phases" -> “link binary with libraries” 的列表中去。要注意的是这个属性不是项目的,
而是项目下的 Products 下的。

4.在步骤 2 中生成的静态库并不会将原项目中的代码直接引入,而是新增加了一对 .h.m 源码文件,以 及一个新的文件夹。
这时候也不用复制原来的源码到新目录下,只要先跟所有的 .c 文件,然后在最右边的 "属性" 窗口中的 "Target Membership" 中勾选上新增加的静态库就可以了。
注意,只能是选择 .c 这样的源文件, .h 这样的头文件是不支持,也不需要这样操作的。

5.新生成的静态库和各个文件夹都是可以安全的重命名的。有些是在目录树中点击出现编辑框后即可修改。
有些是在主菜单 "Product" -> "Scheme" -> "Manager Schemes" 中修改。也是先选中后再点击,
出现编辑框后进行修改。

6.题外话。对于 ffmpeg 项目,居然有些 .c 文件是作为模板会多次引入的,这些 .c 文件是不能加入到项目中的。
否则会编译错误。比如 rgb2rgb_template.c 。可以从项目中删除,也可以在右边属性中不让其加入项目编译就可以了。

7.另参考:https://blog.csdn.net/iteye_661/article/details/82366638
当我们把FFmpeg(0.11.1)项目完整编译出来后,会有7个库文件,根据so依赖关系排行.

1.libavdevice 和多媒体设备交互的类库,例如 获取DirectShow设备数据(摄像头,录屏) 。所以应该不是必须的。
2.libavfilter 滤镜(filter)功能
3.libavformat 容器,也就是文件的格式,装载着流
4.libavcodec 编码,解码器,针对某一流
5.libswscale
6.libswresample
7.libavutil 一般工具类,以上的组件都要依赖它

音视频编解码都在libavcodec目录,文件合成分离都在libavformat目录。
./libavcodec/flvdec.c是FLV视频解码器
./libavformat/flvdec.c就是FLV文件分离器(parser,demuxer,splitter)


总数:0 页次:1/0 首页 尾页  
总数:0 页次:1/0 首页 尾页  


所在合集/目录
ffmpeg 更多



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1