Qtwebengine无法编译.在Yocto中找不到EGL/EGL.H



使用yocto krogoth构建一个在OpenGL支持的情况下为Atom X64构建发行版。如果不添加QTWebengine,BitBake将构建正常,但添加它会导致错误:

致命错误:egl/egl.h:没有这样的文件或目录

我的conf/local.conf我添加了:

DISTRO_FEATURES_append = " opengl x11 "
IMAGE_INSTALL = "qtbase qtwebengine 
x11-common mesa-gl 
"
CORE_IMAGE_BASE_INSTALL += "mesa-megadriver"
CORE_IMAGE_BASE_INSTALL += "libegl-gallium"
CORE_IMAGE_BASE_INSTALL += "libegl-mesa"
CORE_IMAGE_BASE_INSTALL += "libgbm"
CORE_IMAGE_BASE_INSTALL += "libgbm-gallium"
CORE_IMAGE_BASE_INSTALL += "mesa-driver-pipe-swrast"
CORE_IMAGE_BASE_INSTALL += "mesa-driver-pipe-vmwgfx"
CORE_IMAGE_BASE_INSTALL += "mesa-driver-pipe-i915"
CORE_IMAGE_BASE_INSTALL += "libgles1-mesa"
CORE_IMAGE_BASE_INSTALL += "libgles2-mesa"
PREFERRED_PROVIDER_virtual/libgl  ?= "mesa-gl"
PREFERRED_PROVIDER_virtual/mesa  ?= "mesa-gl"
PREFERRED_PROVIDER_mesa-driver-swrast = "mesa-gl"
PREFERRED_PROVIDER_virtual/libgles1 = "mesa-gl"
PREFERRED_PROVIDER_virtual/libgles2 = "mesa-gl"

,如果我将虚拟/EGL设置为Mesa,我会得到

错误:什么都没有提供'Virtual/egl'

错误:MESA提供虚拟/EGL,但被跳过:preferred_provider_virtual/libgl设置为梅萨 - GL,而不是梅萨

错误:MESA提供虚拟/EGL,但被跳过:preferred_provider_virtual/libgl设置为梅萨 - GL,而不是梅萨

,如果我将所有内容都设置为MESA,则QTBase不会构建,因为找不到LGL。

我该如何通过。

也许来自台面首页的补丁会帮助您。

diff --git a/include/GL/mesa_glinterop.h b/include/GL/mesa_glinterop.h
index b76bd7e..5c172c6 100644
--- a/include/GL/mesa_glinterop.h
+++ b/include/GL/mesa_glinterop.h
@@ -51,7 +51,7 @@
 #define MESA_GLINTEROP_H
 #include <stddef.h>
-#include <EGL/egl.h>
+#include <stdint.h>
 #ifdef __cplusplus
 extern "C" {
@@ -61,6 +61,10 @@ extern "C" {
 typedef struct _XDisplay Display;
 typedef struct __GLXcontextRec *GLXContext;
+/* Forward declarations to avoid inclusion of EGL/egl.h */
+typedef void *EGLDisplay;
+typedef void *EGLContext;
+
 /** Returned error codes. */
 enum {
    MESA_GLINTEROP_SUCCESS = 0,

相关内容

  • 没有找到相关文章

最新更新