[Buildroot] How to build the qt plugin in gst1-plugins-bad ?

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Wed Jul 19 09:35:53 UTC 2017


Hello,

On Wed, 19 Jul 2017 17:17:43 +0800, Glenn Coombs wrote:

> configure:50774: WARNING: Could not find any Qt Windowing integration
> 
> I'm not sure why the qt plugin is explicitly disabled - is there a known
> issue with building this plugin ?

I don't think so, it's probably just that nobody needed it until now,
and therefore nobody did the effort to see what changes were needed to
enable it.

> Can anybody help with what further options I might need to set to get
> it to build ?

You should read the configure.ac script of gst1-plugins-bad, it gives
all the details of the checks it is doing about Qt. See
https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/configure.ac?id=1.12.1#n2907.

Since you're using eglfs, I think you should fall into the case where:

        if test "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then

then since you're not on Android

          if test "x$GST_GL_HAVE_WINDOW_ANDROID" = "x1"; then

should be false, which brings you to the else case:

          else
              AC_DEFINE([HAVE_QT_EGLFS], [],
                [Define if Qt eglfs integration is installed])
              HAVE_QT_WINDOWING="yes"
          fi

The error message that you get "Could not find any Qt Windowing
integration" appears when HAVE_QT_WINDOWING is "no". So obviously
GST_GL_HAVE_PLATFORM_EGL is not "1" in your situation, and that's the
problem.

GST_GL_HAVE_PLATFORM_EGL is set to 1 in:

if test "x$USE_EGL" = "xyes"; then
  GL_PLATFORMS="egl $GL_PLATFORMS"
  GST_GL_HAVE_PLATFORM_EGL=1
fi

So we need to understand when USE_EGL is set to "yes". For the Linux
platform, it is set to yes as follows:

      if test "x$NEED_EGL" != "xno"; then
        if test "x$HAVE_WINDOW_WAYLAND" = "xyes" -o "x$HAVE_WINDOW_X11" = "xyes" -o "x$HAVE_WINDOW_DISPMANX" = "xyes" -o "x$HAVE_WINDOW_VIV_FB" = "xyes"; then
          GL_LIBS="$GL_LIBS -lEGL $EGL_LIBS"
          GL_CFLAGS="$GL_CFLAGS $EGL_CFLAGS"
          USE_EGL=yes
        fi
      fi

So you need to find out why HAVE_WINDOW_VIV_FB is not "yes".

I suggest that you add a bunch of additional echo in the configure
script to dump the value of the various variables, in order to
progressively figure out what's going on.

Once you have nailed down the problematic variable, we can probably
help again to understand what is the problem.

Good luck!

Thomas Petazzoni
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com


More information about the buildroot mailing list