Building Wayland on Ubuntu 12.04

nerdopolis bluescreen_avenger at verizon.net
Fri Dec 23 20:44:10 PST 2011


Hi. I am trying to build Wayland on Ubuntu with the below script, on a 
debootstrap created chrooted Ubuntu 12.04 system. I had to make a few 
modifications to the build instructions, such as the --libdir=$WLD/lib/$(dpkg-
architecture -qDEB_HOST_MULTIARCH), as Ubuntu's new Multiarch puts the 
libraries in new places.


The problem is that now I get this error during the make install for wayland-
demos:
rsvg-convert: symbol lookup error: /usr/lib/i386-linux-gnu/mesa/libGL.so.1: 
undefined symbol: _glapi_tls_Dispatch

and this error when I try to run wayland-compositor:
wayland-compositor: symbol lookup error: /usr/lib/i386-linux-gnu/mesa-
egl/libGLESv2.so.2: undefined symbol: _glapi_tls_Dispatch

Is mesa being built incorrectly? Thanks.


apt-get install build-essential libtool libxi-dev libxmu-dev libxt-dev bison 
flex libgl1-mesa-dev xutils-dev libtalloc-dev libdrm-dev autoconf x11proto-kb-
dev libegl1-mesa-dev libgles2-mesa-dev libgdk-pixbuf2.0-dev libudev-dev 
libxcb-dri2-0-dev libxcb-xfixes0-dev shtool libffi-dev libpoppler-glib-dev 
libgtk2.0-dev git diffstat libx11-xcb-dev quilt autopoint dh-autoreconf xkb-
data gtk-doc-tools gobject-introspection gperf librsvg2-bin libpciaccess-dev 
kubuntu-desktop python-libxml2 libjpeg-dev   libgbm-dev libjpeg-turbo62     
libjpeg-turbo-progs    
export WLD=/usr
LD_LIBRARY_PATH=$WLD/lib
PKG_CONFIG_PATH=$WLD/lib/pkgconfig/:$WLD/share/pkgconfig/
ACLOCAL="aclocal -I $WLD/share/aclocal"
C_INCLUDE_PATH=$WLD/include
LIBRARY_PATH=$WLD/lib
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1

export WLD LD_LIBRARY_PATH PKG_CONFIG_PATH ACLOCAL C_INCLUDE_PATH \
       LIBRARY_PATH PKG_CONFIG_ALLOW_SYSTEM_CFLAGS


git clone git://anongit.freedesktop.org/wayland/wayland
cd wayland
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make
make install
cd ..


git clone git://anongit.freedesktop.org/git/mesa/drm
cd drm
./autogen.sh --prefix=$WLD --enable-nouveau-experimental-api --
libdir=$WLD/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)
make
make install
cd ..

git clone git://anongit.freedesktop.org/git/xorg/util/macros
cd macros
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make
make install
cd ..

git clone git://anongit.freedesktop.org/xorg/proto/glproto
cd glproto
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make
make install
cd ..

git clone git://anongit.freedesktop.org/xorg/proto/dri2proto
cd dri2proto
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make
make install
cd ..


git clone git://anongit.freedesktop.org/mesa/mesa
cd mesa
./autogen.sh --prefix=$WLD --enable-gles2 --disable-gallium-egl --with-
gallium-drivers=  --with-egl-platforms=x11,wayland,drm --enable-gbm --enable-
shared-glapi --libdir=$WLD/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)
make
make install
cd ..

git clone git://anongit.freedesktop.org/xorg/proto/xproto
cd xproto
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make 
make install
cd ..

git clone git://anongit.freedesktop.org/xorg/proto/kbproto
cd kbproto
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make 
make install
cd ..

git clone git://anongit.freedesktop.org/xorg/lib/libX11
cd libX11
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make 
make install
cd ..

git clone git://people.freedesktop.org/xorg/lib/libxkbcommon.git
cd libxkbcommon/
./autogen.sh --prefix=$WLD --with-xkb-config-root=/usr/share/X11/xkb --
libdir=$WLD/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)
make
make install
cd ..

git clone git://anongit.freedesktop.org/pixman
cd pixman
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make 
make install
cd ..

git clone git://anongit.freedesktop.org/cairo
cd cairo
./autogen.sh --prefix=$WLD --enable-gl --enable-xcb --libdir=$WLD/lib/$(dpkg-
architecture -qDEB_HOST_MULTIARCH)
make 
make install
cd ..


git clone git://anongit.freedesktop.org/wayland/wayland-demos
cd wayland-demos
./autogen.sh --prefix=$WLD --libdir=$WLD/lib/$(dpkg-architecture -
qDEB_HOST_MULTIARCH)
make
make install
cd ..




More information about the wayland-devel mailing list