[PATCH wayland-web 4/7] Added page of Ubuntu12.04 specific directions

Bill Spitzak spitzak at gmail.com
Fri May 23 18:54:36 PDT 2014


From: Bill Spitzak <wspitzak at oblong.com>

---
 building.html    |   18 +++-
 ubuntu12.04.html |  280 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 294 insertions(+), 4 deletions(-)
 create mode 100644 ubuntu12.04.html

diff --git a/building.html b/building.html
index d1eb8ba..1a054a0 100644
--- a/building.html
+++ b/building.html
@@ -8,7 +8,8 @@
 </head>
 
 <body>
-<h1><a href="/"><img src="wayland.png" alt="Wayland logo"></a></h1>
+<h1><a href="/"><img src="wayland.png" alt="Wayland logo"></a>
+Building Weston</h1>
 
 <p>The instructions below assume some familiarity with git and
 building and running experimental software.  Also, be prepared for the fact that this
@@ -16,6 +17,18 @@ project is still very much a prototype.  When the instructions suggest to clone
 of course just add a remote and fetch instead, if you have a clone of
 that repo around already.</p>
 
+<h2>System-specific Directions</h2>
+
+<ul>
+
+<li><a href="ubuntu12.04.html">Building Weston and XWayland on
+Ubuntu 12.04</a>. May be useful any Debian-derived system.</li>
+
+<li>For building Weston for <a href="http://www.raspberrypi.org/">Raspberry
+Pi</a>, see <a href="raspberrypi.html">Raspberry Pi build guide</a>.</li>
+
+</ul>
+
 <h2>Hardware / Drivers</h2>
 
 <p>X output requires DRI2.  DRM output (without X) requires Kernel Mode
@@ -37,9 +50,6 @@ cards require
 <a href="http://nouveau.freedesktop.org/wiki/InstallDRM#Firmware">loading
 external firmware</a>.</p>
 
-<p>For building Weston for <a href="http://www.raspberrypi.org/">Raspberry
-Pi</a>, see <a href="raspberrypi.html">Raspberry Pi build guide</a>.</p>
-
 <h2 id="environment">Setting up the environment</h2>
 <h3>Installing in a custom location</h3>
 <p>If you do not want to install system wide, you'll need to set
diff --git a/ubuntu12.04.html b/ubuntu12.04.html
new file mode 100644
index 0000000..8fe35fe
--- /dev/null
+++ b/ubuntu12.04.html
@@ -0,0 +1,280 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
+<html> 
+
+<head> 
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8"> 
+<link href="wayland.css" rel="stylesheet" type="text/css">
+<title>Building Weston on Ubuntu 12.04</title> 
+</head>
+
+<body>
+<h1><a href="/"><img src="wayland.png" alt="Wayland logo"></a>
+Building Weston on Ubuntu 12.04</h1>
+
+<p>The following sequence of commands successfully built Weston and
+XWayland on an Ubuntu 12.04 LTS system, on 5/23/2014. This system had
+previoulsly been used to compile Xlib programs, and thus already had
+some dependencies (such as git, the compiler, and X11 header files)
+installed.</p>
+
+<p>Parallel make (<code>make -j 9</code>) will probably work on all
+packages but only the ones shown were compiled this way.</p>
+
+<p>Newer Linux distributions should require fewer things to be
+compiled from git.</p>
+
+<p>Conversely, newer versions of the code, in particular Mesa, will
+probably require more dependencies than shown here.</p>
+
+<pre>
+<font color=#800># setup environment for local install:</font>
+export WLD=$HOME/install
+export LD_LIBRARY_PATH=$WLD/lib
+export PKG_CONFIG_PATH=$WLD/lib/pkgconfig/:$WLD/share/pkgconfig/
+export PATH=$WLD/bin:$PATH
+
+export ACLOCAL_PATH=$WLD/share/aclocal
+export ACLOCAL="aclocal -I $ACLOCAL_PATH"
+mkdir -p $ACLOCAL_PATH
+
+<font color=#800># dependencies for libwayland:</font>
+sudo apt-get install doxygen <font color=#800># or use --disable-documentation</font>
+
+<font color=#800># libwayland-*:</font>
+git clone git://anongit.freedesktop.org/wayland/wayland
+cd wayland
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># dependencies for Mesa:
+# "sudo apt-get build-dep mesa" will install these, but will also
+# install unwanted items, such as wayland itself, and xcb prototypes
+# that are too old.</font>
+sudo apt-get install autoconf automake bison debhelper dpkg-dev flex \
+  libdrm-dev libexpat1-dev libudev-dev libx11-dev libx11-xcb-dev \
+  libxdamage-dev libxext-dev libxfixes-dev libxxf86vm-dev \
+  linux-libc-dev pkg-config python-libxml2 quilt x11proto-dri2-dev \
+  x11proto-gl-dev xutils-dev
+
+<font color=#800># Mesa required llvm-3.1, but newer versions are available.
+# "apt-cache search 'llvm-[0-9.]*-dev'" will list them</font>
+sudo apt-get install llvm-3.1-dev
+sudo ln -sf llvm-config-3.1 /usr/bin/llvm-config
+
+sudo apt-get install libpciaccess-dev <font color=#800># needed by drm</font>
+git clone git://anongit.freedesktop.org/git/mesa/drm
+cd drm
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># needed by libxcb:</font>
+git clone git://anongit.freedesktop.org/xcb/proto
+cd proto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># needed by libxcb:</font>
+git clone git://anongit.freedesktop.org/xorg/util/macros
+cd macros
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xcb/libxcb
+cd libxcb
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/presentproto
+cd presentproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/dri3proto
+cd dri3proto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/lib/libxshmfence
+cd libxshmfence
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># Mesa:</font>
+git clone git://anongit.freedesktop.org/mesa/mesa
+cd mesa
+./autogen.sh --prefix=$WLD --enable-gles2 --disable-gallium-egl \
+ --with-egl-platforms=x11,wayland,drm --enable-gbm --enable-shared-glapi \
+ --with-gallium-drivers=r300,r600,swrast,nouveau \
+ --disable-llvm-shared-libs <font color=#800># this may be a bug in the llvm package</font>
+make && make install
+cd ..
+
+<font color=#800># The version of Cairo included with Ubuntu 12.04 has bugs that cause
+# rendering errors in some Wayland clients (in particular the
+# Xserver). Though not required, it may be a good idea to compile the
+# newest version from source:</font>
+git clone git://anongit.freedesktop.org/pixman
+cd pixman
+./autogen.sh --prefix=$WLD
+make -j 9 && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/cairo
+cd cairo
+./autogen.sh --prefix=$WLD --enable-xcb
+make -j 9 && make install
+cd ..
+
+<font color=#800># libinput dependencies:</font>
+sudo apt-get install libmtdev-dev libpam0g-dev
+
+git clone git://github.com/xkbcommon/libxkbcommon
+cd libxkbcommon
+./autogen.sh --prefix=$WLD --with-xkb-config-root=/usr/share/X11/xkb
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/libevdev
+cd libevdev
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># libinput:</font>
+git clone git://anongit.freedesktop.org/wayland/libinput
+cd libinput
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># Weston dependencies:</font>
+git clone git://git.sv.gnu.org/libunwind
+cd libunwind
+autoreconf -i <font color=#800># note that autogen is not used</font>
+./configure --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># Weston and demo applications:</font>
+git clone git://anongit.freedesktop.org/wayland/weston
+cd weston
+./autogen.sh --prefix=$WLD --enable-libinput-backend --disable-setuid-install
+make -j 9 && make install
+cd ..
+
+<font color=#800># XServer dependencies:</font>
+sudo apt-get install libxfont-dev
+
+git clone https://github.com/anholt/libepoxy.git
+cd libepoxy
+CPPFLAGS=-I$WLD/include ./autogen.sh --prefix=$WLD <font color=#800># note the -I!</font>
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/glproto
+cd glproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/xproto
+cd xproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/xcmiscproto
+cd xcmiscproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/lib/libxtrans
+cd libxtrans
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/bigreqsproto
+cd bigreqsproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/xextproto
+cd xextproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/fontsproto
+cd fontsproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/videoproto
+cd videoproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/recordproto
+cd recordproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/resourceproto
+cd resourceproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/proto/xf86driproto
+cd xf86driproto
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+git clone git://anongit.freedesktop.org/xorg/lib/libxkbfile
+cd libxkbfile
+./autogen.sh --prefix=$WLD
+make && make install
+cd ..
+
+<font color=#800># XWayland:</font>
+git clone git://anongit.freedesktop.org/xorg/xserver
+cd xserver
+./autogen.sh --prefix=$WLD --disable-docs --disable-devel-docs \
+  --enable-xwayland --disable-xorg --disable-xvfb --disable-xnest \
+  --disable-xquartz --disable-xwin
+make && make install
+cd ..
+
+<font color=#800># Links needed so XWayland works:</font>
+mkdir -p $WLD/share/X11/xkb/rules
+ln -s /usr/share/X11/xkb/rules/evdev $WLD/share/X11/xkb/rules/
+ln -s /usr/bin/xkbcomp $WLD/bin/
+
+<font color=#800># Weston configuration:</font>
+mkdir -p ~/.config
+cp weston/weston.ini ~/.config
+nano ~/.config/weston.ini <font color=#800># edit to set background and turn on xwayland.so module</font>
+
+<font color=#800># Run it in an X11 window:</font>
+weston
+</pre>
+
+<p>Easy Peasy!</p>
+
+</body>
+</html> 
-- 
1.7.9.5



More information about the wayland-devel mailing list