OC-Swift混编时即成GPUImage
1.出错的情况:工程创建时使用OC,且用cocoapods管理了两个类库。
后续即成GPUImage时,本身想利用pod管理,多加了use_frameworks!字段,然后用pod install时报错。
如下:
platform :ios, ‘8.0’
use_frameworks!
target "TextbookUnlimited" do
pod 'BarrageRenderer
pod 'ZFDownload'
pod 'GPUImage'
end
2.解决办法
1>.下载GPUImage
2>.拷贝整个framework文件备份
3>.将下载好的文件拷贝到自己的工程里边
在自己工程目录下(最好是在根目录下)新建一个文件夹,我的文件夹名字叫GPUImage(后面将会用到这个路径),然后将整个 framework 文件夹复制粘贴到该文件夹下。
4>.将GPUImage.xcodeproj拖到工程里边
拖拽的是你刚刚拷贝过来的那个GPUImage.xcodeproj
5>.在自己项目的target依赖设置里面添加GPUImage.a作为Target Dependency
6>.build phase-Link Binary With Libraries, 添加libGPUImage.a
7>.添加GPUImage需要支持的系统framework
CoreMedia
CoreVideo
OpenGLES
AVFoundation
QuartzCore
8>.添加头文件路径
Build Settings -> Header Search Paths 添加GPUImage的路径
因为我之前是在项目的根目录下创建的GPUImage(如果你创建的不是GOPUImage,此处名字必须为你创建的文件名XX)这个文件夹,framework 在GPUImage这个文件夹下,所以添加的路径为 GPUImage/framework 。!!注意:路径需要选择recursive!!
9>.target-build setting里面,other linker flags 里面添加 -fobjc-arc -ObjC 这两项
在 ViewController里边导入 GPUImage.h
10>.如果项目用到swift混编,在桥接文件中引入GPUImage.h
并把
11>.编译如果出现运行到GPUImage某一个方法崩溃的问题,自行百度查看即可