GStreamer Xcode 10 gst.h未找到。

3
我刚升级到Xcode版本10.0(10A255),但我的项目因找不到gst.h而停止工作了。
我已经在桥接头文件中包含了 gst_ios_init.h,并在其中使用了 #include 。但是,在 Xcode 更新后,该项目无法再进行编译,出现了以下错误:
'gst/gst.h' 文件未找到。
它以前可以工作,但现在突然失败了。
我已经将这个框架包含进去了,并添加了 Framework Search Path 和 Header Search。

我认为这是一个已知的问题。所有的GStreamer包含文件都使用"include.h"或<include.h>来包含它们的文件,其中一个用于系统库,另一个用于私有库。在XCode 10中,这现在是一个严重的错误,GStreamer将不再工作。我没有一个简单的解决方法。但至少你知道该去哪里看了。 - Florian Zwoch
1个回答

2
今天我用XCode版本10.1(10B61)成功运行了我的应用程序,感谢这个这个
我做的事情如下:
  1. 为确保安全,我删除了之前安装的GStreamer(文件夹:/Library/Developer/GStreamer),并从项目中删除了GStreamer框架(右键单击Frameworks/GStreamer.framework->Delete->Remove reference)。

  2. 安装了GStreamer 1.14.4。您可以从这里获取它:https://gstreamer.freedesktop.org/data/pkg/ios/1.14.4/

  3. /Library/Developer/GStreamer/iPhone.sdk中提取GStreamer.framework,然后将其放回到项目的Frameworks文件夹中。我没有勾选Copy files if necessary选项。

  4. 更改TARGET中的搜索路径:

Framework search path: "$(HOME)/Library/Developer/GStreamer/iPhone.sdk"

Header search path: "$(HOME)/Library/Developer/GStreamer/iPhone.sdk/GStreamer.framework/Headers"

就这样了。第一次构建需要很长时间,但它能够工作。

另一个可行的选择是将File->Workspace Settings->Build system更改为Legacy Build System,但使用上述步骤可以使用New Build system

更新:刚刚安装了Xcode版本10.2 beta 3(10P99q),现在可以正常运行,甚至可以进行存档。


对我来说,我所要做的就是在搜索路径中用$(HOME)替换掉。Xcode因某种不可思议的原因破坏了 - GenericPtr
更新:使用 Xcode 版本 10.2 beta 3(10P99q)现在可以工作,甚至可以打包归档。 - fabianz66

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接