cocoa - GPUImage 无法在 iOS 12 上编译

标签 cocoa opengl-es gpuimage ios12

我有这些错误:

  1. 未找到 Cocoa.h 文件(在 GPUImageView.h 中)

  2. 未知类型名称:**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/

相关文章:

cocoa - 嵌入式框架与 bundle 外部的版本冲突

javascript - 自透明对象仅从一侧看起来正确

android - OpenGL ES 着色器降低太多性能

ios - 如何使用GPUImage MotionDetection-swift获取移动物体的坐标

iphone - 使用 GPUImage,我如何将图像分成 4 份并对所有 4 个角应用不同的过滤器并重新组合?

swift - 将 GPUImage MultipleBlend 从 OBJ-C 转换为 Swift

swift - 如何制作 NSSound 循环

cocoa-touch - 将 NaN 存储在属性列表 (plist) 文件中

objective-c - 阻止 `mouseMovedEvent` 回调处理移动?还是暂时全局隐藏光标?

ios - 每帧渲染一个小纹理然后按比例放大?