[meta-freescale] libGL references libX11?

Mark Farver mfarver at mindbent.org
Sat Aug 20 17:40:06 PDT 2016


I attempted to make a image based on core-image-weston with the
addition of just libsld2-ttf and it seems to get hung up with libGL
referencing libX11 functions:

Log data follows:
| DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common',
'arm-32', 'common-linux', 'common-glibc', 'arm-linux',
'arm-linux-gnueabi', 'common']
| DEBUG: Executing shell function do_compile
| NOTE: make -j 16
| ./arm-poky-linux-gnueabi-libtool  --tag=CC   --mode=link
arm-poky-linux-gnueabi-gcc  -march=armv7-a -marm -mfpu=neon
-mfloat-abi=hard -mcpu=cortex-a9
--sysroot=/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd
 -O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/libsdl2-ttf/2.0.14-r0=/usr/src/debug/libsdl2-ttf/2.0.14-r0
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd=
 -I/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/include/freetype2
-D_REENTRANT -I/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/include/SDL2
-DHAVE_OPENGL  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o glfont
glfont.o libSDL2_ttf.la -lGL -lm -lfreetype -lSDL2
| arm-poky-linux-gnueabi-libtool: link: arm-poky-linux-gnueabi-gcc
-march=armv7-a -marm -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9
--sysroot=/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd
-O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/libsdl2-ttf/2.0.14-r0=/usr/src/debug/libsdl2-ttf/2.0.14-r0
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd=
-I/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/include/freetype2
-D_REENTRANT -I/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/include/SDL2
-DHAVE_OPENGL -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o
.libs/glfont glfont.o  ./.libs/libSDL2_ttf.so -lGL
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libfreetype.so
-lz /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libSDL2.so
-ldl -lEGL /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libwayland-cursor.so
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libwayland-client.so
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libffi.so
-lm /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libxkbcommon.so
-lpthread -lrt -pthread
| /home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/ld:
warning: libXdamage.so.1, needed by
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so,
not found (try using -rpath or -rpath-link)
| /home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/ld:
warning: libXfixes.so.3, needed by
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so,
not found (try using -rpath or -rpath-link)
| /home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/ld:
warning: libXext.so.6, needed by
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so,
not found (try using -rpath or -rpath-link)
| /home/build/fsl-community-krogoth/build/tmp/sysroots/x86_64-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/ld:
warning: libX11.so.6, needed by
/home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so,
not found (try using -rpath or -rpath-link)
| /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so:
undefined reference to `XQueryExtension'
| /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so:
undefined reference to `_XReply'
| /home/build/fsl-community-krogoth/build/tmp/sysroots/imx6qsabresd/usr/lib/libGL.so:
undefined reference to `XFree'
...references to many other X11 functions

This isn't the first time I've seen this when trying to get OpenGL
running without X.  Is there some other way I should be getting GL
support?

core-image-weston-sdl.bb
-------------------------------------------------------
SUMMARY = "A very basic Wayland image with a terminal"
IMAGE_FEATURES += "splash package-management ssh-server-dropbear hwcodecs"
LICENSE = "MIT"
inherit core-image distro_features_check
REQUIRED_DISTRO_FEATURES = "wayland"
CORE_IMAGE_BASE_INSTALL += "weston weston-init weston-examples
gtk+3-demo clutter-1.0-examples"
IMAGE_INSTALL += " libsdl2-ttf"

local.conf
-------------------------------------------------------
MACHINE ??= 'imx6qsabresd'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
USER_CLASSES ?= "buildstats image-mklibs"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    STOPTASKS,/tmp,100M,100K \
    ABORT,${TMPDIR},100M,1K \
    ABORT,${DL_DIR},100M,1K \
    ABORT,${SSTATE_DIR},100M,1K \
    ABORT,/tmp,10M,1K"
PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
CONF_VERSION = "1"

DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = "1"

PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"

DISTRO_FEATURES_LIBC = "ipv6 libc-backtrace libc-big-macros libc-bsd
libc-cxx-tests libc-catgets libc-charsets libc-crypt \
               libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt
libc-fmtmsg libc-fstab libc-ftraverse \
               libc-getlogin libc-idn libc-inet libc-inet-anl
libc-libm libc-locales libc-locale-code \
               libc-memusage libc-nis libc-nsswitch libc-rcmd
libc-rtld-debug libc-spawn libc-streams libc-sunrpc \
               libc-utmp libc-utmpx libc-wordexp
libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc \
               libc-posix-wchar-io"

DISTRO_FEATURES = "alsa argp largefile usbhost wifi xattr nfs zeroconf
pci 3g ${DISTRO_FEATURES_LIBC} opengl wayland"

Anyone have any suggestions... or is this impossible becuase
libsdl2-ttf generally users FreeType (I think)?

I have an app that was written to use SDL2 on X windows to render a
GUI, and then used mplayer to superimpose a h264 video on top.  I need
accelerated video support, and apparently NXP doesn't have XV support
in the Vivante X11 driver and probably never will.  Is there any way I
can use both SDL and a video playback engine to render hardware
accelerated video?


Thank you
Mark Farver


More information about the meta-freescale mailing list