Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt gst插件良好构建失败,出现错误:‘;GLsync&x2019;尚未申报_Qt_Opengl Es 2.0_Gstreamer_Gstreamer 1.0 - Fatal编程技术网

Qt gst插件良好构建失败,出现错误:‘;GLsync&x2019;尚未申报

Qt gst插件良好构建失败,出现错误:‘;GLsync&x2019;尚未申报,qt,opengl-es-2.0,gstreamer,gstreamer-1.0,Qt,Opengl Es 2.0,Gstreamer,Gstreamer 1.0,当我在另一台ARM机器上为Raspberry Pi构建gst插件good==1.16.2时,Qt插件构建失败 我成功构建了gstreamer==1.16.2和gst插件base==1.16.2和qtbase==5.13.2,但它们似乎与gst插件good==1.16.2不兼容: In file included from gstqtgl.h:32:0, from qtwindow.h:27, from moc_qtwindow.

当我在另一台ARM机器上为Raspberry Pi构建
gst插件good==1.16.2
时,Qt插件构建失败

我成功构建了
gstreamer==1.16.2
gst插件base==1.16.2
qtbase==5.13.2
,但它们似乎与
gst插件good==1.16.2
不兼容:

In file included from gstqtgl.h:32:0,
                 from qtwindow.h:27,
                 from moc_qtwindow.cc:10:
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:17: error: expected identifier before ‘*’ token
   ret (GSTGLAPI *name) args;
                 ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:27:1: note: in expansion of macro ‘GST_GL_EXT_FUNCTION’
 GST_GL_EXT_FUNCTION (GLsync, FenceSync,
 ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:29:39: error: ISO C++ forbids declaration of ‘GLsync’ with no type [-fpermissive]
                       GLbitfield flags))
                                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:29:39: error: ‘GLsync’ declared as function returning a function
                       GLbitfield flags))
                                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:31:23: error: ‘GLsync’ has not been declared
                      (GLsync sync))
                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:33:23: error: ‘GLsync’ has not been declared
                      (GLsync sync))
                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:35:23: error: ‘GLsync’ has not been declared
                      (GLsync sync,
                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:39:23: error: ‘GLsync’ has not been declared
                      (GLsync sync,
                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:43:23: error: ‘GLsync’ has not been declared
                      (GLsync sync,
                       ^
/build/snaps/full/stage/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro ‘GST_GL_EXT_FUNCTION’
   ret (GSTGLAPI *name) args;
                        ^
Makefile:881: recipe for target 'libgstqmlgl_la-moc_gstqsgtexture.lo' failed
我在中看到了一个非常类似的问题,但在我的代码中,他们想要删除的行已经丢失了

相反,我从中删除了
#define GST\u GL\u HAVE\u GLSYNC 1
,编译成功

但是上面的评论说它应该使用Qt的GLsync定义,这样我的“修复”看起来就不正确了


我仍在努力为这个问题找到合适的解决方案。

我发现,在Raspberry Pi设备上使用补丁不会破坏任何东西

diff -Naur ./src/ext/qt/gstqtgl.h ./src2/ext/qt/gstqtgl.h
--- ./ext/qt/gstqtgl.h      2019-04-19 09:16:25.000000000 +0000
+++ ./ext/qt/gstqtgl.h      2019-12-15 09:22:22.503065057 +0000
@@ -28,7 +28,6 @@
  * that we don't typedef GLsync in gstglfuncs.h */
 #include <gst/gl/gstglconfig.h>
 #undef GST_GL_HAVE_GLSYNC
-#define GST_GL_HAVE_GLSYNC 1
 #include <gst/gl/gstglfuncs.h>

 /* The glext.h guard was renamed in 2018, but some software which
diff-Naur./src/ext/qt/gstqtgl.h./src2/ext/qt/gstqtgl.h
---/ext/qt/gstqtgl.h 2019-04-19 09:16:25.000000000+0000
+++/ext/qt/gstqtgl.h 2019-12-15 09:22:22.503065057+0000
@@ -28,7 +28,6 @@
*我们没有在gstglfuncs.h中键入def GLsync*/
#包括
#未定义GST\u GL\u HAVE\u GLSYNC
-#定义GST\u总账\u是否有GLSYNC 1
#包括
/*glext.h guard于2018年更名,但一些软件
我希望如果有人遇到麻烦,这会有所帮助

如果有东西坏了,我会更新这篇文章