我使用GPUImage framework创建了一个执行凹凸失真的示例应用程序。我将此框架添加到我的应用程序中,但我看到以下错误
词法或预处理器未找到“GPUImage.h”文件。
我已将-ObjC
标志添加到其他链接器标志,但我仍然看到此错误。如何解决这个问题并让我的应用程序编译?
答案 0 :(得分:30)
将GPUImage框架添加到XCode项目可能会非常棘手。所以我已经添加了有关如何操作的详细步骤说明。
静态编译方法(详细解决方案,所以我们不要搞砸)
这是静态编译方法。基本上我们将使用./build.sh文件编译框架。只需将其添加到我们的XCode项目中,然后配置XCode以正确使用它。
GPUImage
文件夹
运行 ./ build.sh
注意:这将为您Mac上的所有sdks编译并创建即用型二进制文件。
build.sh创建一个名为 build 的文件夹并生成已编译的二进制文件并将其转储到以下文件夹中:发布 - iPhone ,发布 - iPhoneOS < / strong>,发布 - iphonesimulator 等文件夹。
现在,iPhone将 Release-iphone 拖放到您的XCode项目中。确保选中“复制到...”选项。
注意:
在项目浏览器中选择项目&gt; 目标&gt;下的项目名称选择Build Phases&gt;展开使用库链接二进制文件
将 libGPUImage.a 添加到Link Binary With Libraries部分。您可能需要右键单击 libGPUImage.a ,然后在Finder中打开,最后拖放它。
当我们在这里时,还要添加以下GPUImage的依赖框架/库 CoreMedia,CoreVideo,OpenGLES,AVFoundation,QuartzCore 到链接二进制文件库部分
现在,让我们配置 .h 标题。
在项目浏览器中选择项目&gt; 目标&gt;下的项目名称选择构建设置&gt;并输入搜索路径以查看搜索路径部分。
点击值字段,打开标题搜索路径。
将 lib 文件夹拖放到该弹出窗口。注意:如果显示绝对路径,请将其更改为 $(SRCROOT)/ path / to / lib / 。 (您应该拥有与您的xcode项目相关的框架,请参阅步骤6)。
重复11&amp; 12也适用于图书馆搜索路径。
其他提示:您可以将 .h 文件添加到图书馆搜索路径或标题搜索路径,您可以将它们递归。我有一个名为 Dependencies 文件夹的主根文件夹,我保留了所有依赖项,如MySDK-framework,包括Release-iPhone。我只在Dependencies(根文件夹)中有一个搜索路径,并使其递归。
答案 1 :(得分:6)
您是否遵循了project page上自述文件中的所有说明?从安装说明:
你还需要找到框架标题,所以在你的 项目的构建设置将标题搜索路径设置为相对 从您的应用程序到其中的框架/子目录的路径 GPUImage源目录。将此标题搜索路径递归。
如果您看到上述错误,则表示您没有将标题搜索路径指向您已在相对于项目安装GPUImage的正确目录中,和/或未单击左侧的复选框使这些搜索路径递归。
我展示了你需要在this answer中设置它的一些屏幕截图,这解释了Core Plot框架的类似内容。同样的原则适用,只需要找到你在哪里安装GPUImage框架。
答案 2 :(得分:5)
我添加“Header Search Paths”的相对路径,但仍然存在“找不到”的错误。
然后,我添加“用户标题搜索路径”的路径,它可以工作。
可以帮助你。
答案 3 :(得分:2)