[PATCH wayland-web] Remove the special Raspberry Pi guide

Yong Bakos junk at humanoriented.com
Thu Jun 2 15:04:44 UTC 2016


On Jun 1, 2016, at 5:11 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:
> 
> From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
> 
> The Raspberry Pi backend has been removed from Weston. You should try
> the FOSS driver stack instead.
> 
> Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>

Reviewed-by: Yong Bakos <ybakos at humanoriented.com>

yong


> ---
> building.html    |   4 +-
> raspberrypi.html | 225 -------------------------------------------------------
> 2 files changed, 3 insertions(+), 226 deletions(-)
> delete mode 100644 raspberrypi.html
> 
> diff --git a/building.html b/building.html
> index a669e31..1ff9ea2 100644
> --- a/building.html
> +++ b/building.html
> @@ -55,7 +55,9 @@ Ubuntu 12.04</a>. May be useful for any Debian-derived system.</li>
> Linux Mint 17</a>, which is derived from Ubuntu 14.04.</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>
> +Pi</a>, follow the normal build guide after checking out the
> +<a href="https://dri.freedesktop.org/wiki/VC4/">FOSS drivers</a>, and use
> +the DRM-backend.</li>
> 
> <li>For building Wayland on Arch note that <a href="https://wiki.archlinux.org/index.php/Docbook#Setting_up_Docbook_in_Arch">DocBook dependencies</a> will be needed when building documentation.</li>
> 
> diff --git a/raspberrypi.html b/raspberrypi.html
> deleted file mode 100644
> index 442a694..0000000
> --- a/raspberrypi.html
> +++ /dev/null
> @@ -1,225 +0,0 @@
> -<!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>Weston on Raspberry Pi</title> 
> -</head>
> -
> -<body>
> -<h1><a href="/"><img src="wayland.png" alt="Wayland logo"></a></h1>
> -
> -<h2>Weston on Raspberry Pi</h2>
> -
> -<p>This is a guide for installing Weston into
> -<a href="http://www.raspberrypi.org/">Raspberry Pi</a>. All commands and
> -compiling are done directly on the Pi. In Raspbian, it is recommended to
> -run Weston as the user 'pi', as Raspbian seems to allow input device access
> -mostly for this user while logged in locally (not via ssh).</p>
> -
> -<p>However, if you just want to try Weston and not build it, there are
> -packages.</p>
> -
> -<blockquote>
> -<h3>Raspbian packages</h3>
> -
> -<p>There are pre-built Wayland and Weston packages for the
> -<a href="http://www.raspbian.org/">Raspbian</a> distribution.</p>
> -
> -<p>Recent versions of the Raspbian image
> -<a href="http://www.raspberrypi.org/downloads">downloaded from
> -raspberrypi.org</a> already have the raspberrypi.collabora.com repository
> -enabled. At least version 2013-09-25 is confirmed to have it, and
> -in fact that image comes with Weston 1.1.0 pre-installed.</p>
> -
> -<p>If you need to add the repository manually,
> -add the following line to <tt>/etc/apt/sources.list</tt> file:</p>
> -<pre>    deb http://raspberrypi.collabora.com wheezy rpi
> -</pre>
> -<p>To install Weston, just issue:</p>
> -<pre>    sudo apt-get update
> -    sudo apt-get install weston</pre>
> -
> -<p>This will install also a script called <tt>weston-launch</tt>
> -(not the real <tt>weston-launch</tt> program), which will automatically
> -set up <tt>XDG_RUNTIME_DIR</tt> for you and run <tt>weston</tt>.
> -Running Weston with this package is as simple as:</p>
> -<pre>    weston-launch</pre>
> -<p>No need to manually set up environment variables. The firmware notes
> -below are still worth checking, though.</p>
> -</blockquote>
> -
> -
> -<h2>Build dependencies</h2>
> -
> -<p>Assuming you are using the Raspbian distribution, install the
> -build dependencies:</p>
> -<pre>    $ sudo apt-get install build-essential automake libtool bison flex \
> -    xutils-dev libcairo2-dev libffi-dev libmtdev-dev libjpeg-dev \
> -    libudev-dev libxcb-xfixes0-dev libxcursor-dev libraspberrypi-dev \
> -    libxkbcommon-dev libxcb-composite0-dev libpam-dev
> -</pre>
> -
> -<p>On December 4th, 2013, libxkbcommon-dev is not yet found in Raspbian
> -itself, but it is available from the raspberrypi.collabora.com repository,
> -see above.</p>
> -
> -<h2>Firmware</h2>
> -
> -<p>You may need the latest Raspberry Pi firmware, which you can get with the
> -<a href="https://github.com/Hexxeh/rpi-update">rpi-update</a> tool. A too
> -old firmware may cause rpi-backend to malfunction on Raspberry Pi. Running
> -<tt>rpi-update</tt> will overwrite files installed by some raspbian packages
> -like libraspberrypi-dev. You can safely try Weston without <tt>rpi-update</tt>
> -first, but if you encounter graphics problems, see if it fixes them.</p>
> -
> -<p>You may want to tweak the following options in
> -<tt>/boot/config.txt</tt>:</p>
> -<dl>
> -	<dt><tt>gpu_mem=128</tt></dt>
> -	<dd>How much memory to reserve for the VideoCore, i.e. framebuffers,
> -	GL textures, Dispmanx resources.</dd>
> -	<dt><tt>dispmanx_offline=1</tt></dt>
> -	<dd>This will enable the firmware to fall back to off-line
> -	compositing of Dispmanx elements. Normally the compositing
> -	is done on-line, during scanout, but cannot handle too many
> -	elements. With off-line enabled, an off-screen buffer
> -	is allocated for compositing. When scene complexity
> -	(number and sizes of elements) is high, compositing will
> -	happen off-line into the buffer. <b>Heavily recommended.</b></dd>
> -</dl>
> -
> -<h2>Setting up the environment</h2>
> -
> -<p>Here we will install to the home directory of the pi user.</p>
> -
> -<blockquote>
> -<pre>export WLD="$HOME/local"
> -export PATH="$WLD/bin:$PATH"
> -export LD_LIBRARY_PATH="$WLD/lib:/opt/vc/lib"
> -export PKG_CONFIG_PATH="$WLD/lib/pkgconfig/:$WLD/share/pkgconfig/"
> -export ACLOCAL_PATH="$WLD/share/aclocal"
> -export ACLOCAL="aclocal -I $ACLOCAL_PATH"
> -
> -export XDG_RUNTIME_DIR="/run/shm/wayland"
> -export XDG_CONFIG_HOME="$WLD/etc"
> -export XORGCONFIG="$WLD/etc/xorg.conf"
> -
> -mkdir -p "$WLD/share/aclocal"
> -mkdir -p "$XDG_RUNTIME_DIR"
> -chmod 0700 "$XDG_RUNTIME_DIR"
> -</pre>
> -</blockquote>
> -
> -<p>You may put the above in a script and source it in the terminal
> -where you wish to build the packages or run Weston.</p>
> -
> -<h2>pkg-config files</h2>
> -
> -<p>Some libraries on the Pi do not have appropriate pkg-config files
> -installed. We need to install them.</p>
> -
> -<p>Download the .pc files from
> -<a href="http://cgit.collabora.com/git/user/pq/android-pc-files.git/tree/pkgconfig?h=raspberrypi">git://git.collabora.co.uk/git/user/pq/android-pc-files.git</a>
> -and make sure you take the <em>raspberrypi</em> branch. The master branch
> -contains similar files for Android, and will not work.</p>
> -
> -<p>Copy the .pc files into <tt>$WLD/share/pkgconfig/</tt>:</p>
> -<pre>    $ cp bcm_host.pc egl.pc glesv2.pc $WLD/share/pkgconfig/
> -</pre>
> -
> -<h2>Wayland libraries</h2>
> -
> -<p>Libwayland is built and installed the same way as in
> -<a href="building.html">the generic build guide</a>.</p>
> -
> -<pre>    $ git clone git://anongit.freedesktop.org/wayland/wayland
> -    $ cd wayland
> -    $ ./autogen.sh --prefix=$WLD --disable-documentation
> -    $ make
> -    $ make install
> -</pre>
> -<p>The <tt>--disable-documentation</tt> makes it not require Doxygen.</p>
> -
> -<h2>Weston and demo applications</h2>
> -
> -<p>Weston is configured slightly differently compared to the normal build:</p>
> -<pre>    $ git clone git://anongit.freedesktop.org/wayland/weston
> -    $ cd weston
> -
> -    $ ./autogen.sh --prefix=$WLD \
> -    --disable-x11-compositor --disable-drm-compositor \
> -    --disable-wayland-compositor \
> -    --enable-weston-launch --disable-simple-egl-clients --disable-egl \
> -    --disable-libunwind --disable-colord --disable-resize-optimization \
> -    --disable-xwayland-test --with-cairo=image \
> -    WESTON_NATIVE_BACKEND="rpi-backend.so"
> -
> -    $ make
> -    $ sudo make install
> -</pre>
> -
> -<p>To use <tt>weston-launch</tt>, the user must be in the
> -<em>weston-launch</em> group. Create the group and add the user <em>pi</em>
> -to it:</p>
> -<pre>    $ sudo addgroup weston-launch
> -    $ sudo adduser pi weston-launch
> -    $ logout
> -</pre>
> -<p>You need to log out and then back in to make the group addition effective.
> -You can check that it succeeded with the command <tt>id</tt> which should
> -now list <em>weston-launch</em>. This needs to be done only once, unlike the
> -environment setup.</p>
> -
> -<p>On Raspbian, the user also needs to be in the group <em>video</em> to
> -have read and write access to <tt>/dev/vchiq</tt>.</p>
> -
> -<p>Weston should work by running <tt>weston-launch</tt>. Remember to have the
> -environment set up.</p>
> -
> -<h2>Troubleshooting</h2>
> -
> -<h3>Missing <tt>bcm_host.pc</tt></h3>
> -
> -<pre>checking for RPI_BCM_HOST... no
> -configure: WARNING: Raspberry Pi BCM host libraries not found, will use stubs instead.
> -</pre>
> -
> -<p>If the right pkg-config files are not installed, building weston can
> -fail. If you see the above during Weston's configure step, the
> -<tt>bcm_host.pc</tt> file was not found, and the rpi-backend will not
> -work. The following is what you should see:</p>
> -<pre>checking for RPI_BCM_HOST... yes</pre>
> -
> -<h3>Build error: <tt>undefined reference to `wl_egl_...</tt></h3>
> -
> -<p>Somehow, cairo-egl is getting used, when it should not. Remove the
> -dummy <tt>wayland-egl.pc</tt>, and make sure
> -<tt>--disable-wayland-compositor</tt> is in the configure line.</p>
> -
> -
> -<h3>Some or all surfaces (graphics) are corrupted</h3>
> -
> -<p>Too old firmware might cause corrupted graphics.
> -Try upgrading the firmware, and try the <tt>/boot/config.txt</tt>
> -options mentioned above.</p>
> -
> -<h3>Monitor or TV goes blank, loses signal, etc.</h3>
> -
> -<p>You probably do not have <tt>dispmanx_offline=1</tt> for the firmware.
> -When there are too many things on screen for the on-line compositor to
> -handle, the output dies or becomes corrupt without the off-line fallback.</p>
> -
> -<h3>Some windows or the whole image flickers</h3>
> -
> -<p>There may be so many things on screen, that even the off-line compositor
> -in the firmware cannot keep up. Try to close some windows.</p>
> -
> -<h3>Programs are dying on SIGBUS</h3>
> -
> -<p>Most likely you are running out of space in <tt>$XDG_RUNTIME_DIR</tt>.
> -This is where Wayland programs allocate their pixel buffers.</p>
> -
> -</body>
> -</html>
> -- 
> 2.7.3
> 
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel



More information about the wayland-devel mailing list