Failed to load module: /usr/way/lib/weston/rpi-backend.so: undefined symbol: eglTerminate
Pekka Paalanen
pekka.paalanen at collabora.co.uk
Fri Jan 2 03:52:59 PST 2015
On Wed, 24 Dec 2014 12:49:23 +0800
Jeff Chua <jeff.chua.linux at gmail.com> wrote:
> I recompiled Tomeu's userland git and weston with EGL enabled.
> Compiled ok, but starting weston gives the following error ..
>
> 07:33:06.983] OS: Linux, 3.18.1, #9 Mon Dec 22 21:36:03 SGT 2014, armv6l
> [07:33:06.986] Using config file '/root/.config/weston.ini'
> [07:33:06.988] Loading module '/usr/way/lib/weston/rpi-backend.so'
> [07:33:07.006] Failed to load module:
> /usr/way/lib/weston/rpi-backend.so: undefined symbol: eglTerminate
>
> Without "--enable-egl", weston runs.
>
> Here's my weston's config ..
> I="-fPIC -DBCMHOST=1"
> I="$I -I/opt/vc/include -I/opt/vc/include/EGL"
> I="$I -I/opt/vc/include/interface/vcos/pthreads"
> I="$I -I/opt/vc/include/interface/vmcs_host/linux"
> L="-L/opt/vc/lib -L/usr/way/lib"
>
> WESTON_NATIVE_BACKEND="rpi-backend.so" \
> EGL_CFLAGS="$I" \
> EGL_LIBS="$L" \
> autogen.sh --enable-shared --disable-static \
> --disable-colord \
> --disable-dbus \
> --disable-drm-compositor \
> --disable-libinput-backend \
> --disable-libunwind \
> --disable-resize-optimization \
> --disable-x11-compositor \
> --disable-xwayland-test \
> --disable-wcap-tools \
> --disable-wayland-compositor \
> --enable-demo-clients-install \
> --enable-egl \
> --enable-rpi-compositor \
> --enable-screen-sharing \
> --enable-simple-egl-clients \
> --enable-weston-launch \
> --with-cairo=image \
> --prefix=/usr/way
Hi,
does this mean you don't have the .pc files?
See http://wayland.freedesktop.org/raspberrypi.html which points to
http://cgit.collabora.com/git/user/pq/android-pc-files.git/tree/pkgconfig?h=raspberrypi
It looks like you are trying to override .pc file data with
EGL_CFLAGS/LIBS variables and failing with it. I'd really recommend
just making sure the proper .pc files are installed and found. If
userland.git does not have them already, you should use the ones
mentioned above.
If you look into egl.pc, you are at least missing -lEGL. There is also
some stuff in bcm_host.pc which I don't see with your setup.
I'm suprised it works without --enable-egl, I'd expect all BCM
proprietary functions to be undefined too if you don't have the .pc
files.
> Here's my mesa's config ...
> autogen.sh \
> --prefix=/usr/way \
> --enable-egl --enable-gbm --enable-gles2 \
> --enable-shared-glapi \
> --enable-sysfs \
> --disable-static \
> --with-dri-drivers=swrast \
> --with-egl-platforms=x11,wayland,drm \
> --with-gallium-drivers="vc4,swrast"
If you built and installed userland.git, then Mesa must not be used.
Thanks,
pq
More information about the wayland-devel
mailing list