我有这些错误:
未找到 Cocoa.h 文件(在 GPUImageView.h 中)
未知类型名称:**NSOpenGLContext、CVOpenGLESTextureCacheRef (GPUImageContext)
现在,我尝试修复所有这些错误,但结果却让事情变得更糟。
我知道 OpenGL ES 在 iOS 12 中已被弃用,但据我了解,它目前应该仍然有效,对吗?
对于错误 #1,我不明白 MAC OS 框架 (cocoa.h) 在这里做什么(一些引用文献没有用 #IFDEF MAC_OS 语句包围)。
对于错误 #2,这些类型是在 AppKit 框架(也是 MAC_OS 框架,而不是 iOS 框架)内定义的。
我曾考虑过切换到 GPUImage2,但这是一项繁重的工作,因为它不像交换框架那么容易,我将有很多代码需要重写。我还看到 Brad Larson(这个框架背后的半神)已经开始研究 GPUImage3,它将使用 Metal 而不是 OpenGL ES,但它仍在进行中,但它不会是从 GPUImage v1 到 GPUImage 的简单交换v3。
最佳答案
我找到了解决这个问题的方法。也许它会帮助有同样问题的人。 GPUImage 主文件夹包含 iOS 和 MAC 项目。
转到framework文件夹,然后删除GPUImageMac.xcodeproj文件。
然后转到framework文件夹中的Source文件夹,并删除名为Mac的整个文件夹。
清理您的项目并重建。瞧!
祝你好运!
关于cocoa - GPUImage 无法在 iOS 12 上编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52389886/