xcode中联遍子工程遇到的问题解决
- 前言
公司要使用容联的IM做即时通讯,打算使用容联的UI组件快速集成群聊界面,集成之后发现由于容联停止更新UI组件(libccp_ios_kit),界面布局依然停留在4s版本上,运行在6中是有问题的,我就打算修改UI组件的源码布局(ccp_ios_kit_ source)。那么问题来了,导入的UI组件时不开源,如果修改UI组件的开源文件,那么这个时候就需要使用到联编技术。
- 联编技术:就是将一个子工程A(这里是一个静态库工程),添加在另一个工程中B,B工程可以引用A工程的文件内容。
联编设置:
- 删除导入的UI组件(libccp_ios_kit)中的.a文件,将源码工程(ccp_ios_kit_ source)导入到与UI组件库(libccp_ios_kit)同级的位置。
- 在Build Phsses->Link binary With Library 中添加ccp_ios_kit_ source中的.a文件。
- 在Build Settings -> Other Link Flags添加 -ObjC
联编已经基本完成,如果A工程中有与B工程中相同的静态库(这里包的错误,是找不到libstdc++6.0.9.tbd和libSqlite3.tbd文件)其实是静态文件重复,就删掉子工程中的静态库,方法:关闭工程,打开子工程,删除相同的静态库。然后打开工程重新编译。问题就解决了,这里用的是容联的UI组件进行联编。集体其他的原因就具体分析吧。