
Wayland is a display server protocol for applications that targets to simplify and improve the graphics stack in Linux and other Unix-based operating systems, with the long-term goal of eventually phasing out the legacy X server altogether. Weston is a proof of concept, or reference, compositing windows manager for Wayland. Both these technologies are in the alpha/beta stage, and should be considered extremely unstable.
This section covers installation of Wayland and/or Weston. Please note that due to the rapidly changing state of these two software packages, it is impossible to provide exact directions for installing them. Rather, this section will cover general guidelines and dynamic online resources for the user. The information provided here is only accurate at the time of publication, and may well be outdated by the time EMGD 1.14 is released. Please regard these steps as an example installation sequence rather than a final authoritative set of instructions.
To install Wayland and Weston on your system, there are two approaches.
This approach uses the MeeGo 1.3 release (currently beta release) and installs the Wayland/Weston packages directly from the MeeGo 1.3 repository. The website at http://wiki.meego.com/Wayland_in_MeeGo provides reasonably up-to-date information on this sequence. At the time of publication, Weston is not yet available via this approach, but it should be made available eventually.
This approach builds Wayland and Weston from source. Both MeeGo 1.2 and 1.3 may be used for this approach. Example steps are as follows:
1. Create a export.sh file, with the following contents
export LD_LIBRARY_PATH=$WLD/lib
export PKG_CONFIG_PATH=$WLD/lib/pkgconfig/:$WLD/share/
pkgconfig/
export ACLOCAL="aclocal -I $WLD/share/aclocal"
export C_INCLUDE_PATH=$WLD/include
export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
mkdir –p $HOME/wl/share/aclocal
zypper in –t pattern meego-development-tools
5. For the following list of libraries, download them from the provided link and install them with the specified options.
a. Go to the directory $HOME/wl
b. Download the first package (e.g., libffi) from the download link provided. A basic knowledge of git is assumed.
c. Decompress the package if necessary, and enter the package directory.
./autogen.sh <Configure options>
For example, for libffi, the command would be “./autogen.sh --prefix=$WLD”
If autogen.sh does not exist, use configure in its place.
In general, if compilation of a package fails with an error indicating missing packages, install the –devel version of that package via zypper.
f. Repeat steps a through e for each subsequent package listed in the table below.
http://ftp.gnome.org/pub/GNOME/sources/gobject-introspection/ |
|||
--prefix=$WLD --enable-gles2 --disable-gallium-egl --with-egl-platforms=x11,wayland,drm --enable-gbm --enable-shared-glapi |
|||
6. Create a working directory in which to extract the EMGD modules from the rpm.
cp –vrf <EMGD driver
location>/IEMGD_HEAD_Linux/MeeGo_Wayland/
emgd-bin-xxxx.i586.rpm $HOME/wl/EMGD-extract
rpm2cpio emgd-bin-xxxx.i586.rpm | cpio –idmv
7. Link the following modules. Please note that version numbers may change.
ln –sfv libwayland-egl.so.1.5.15.3226 libwayland-egl.so.1
ln –sfv libgbm.so.1.5.15.3226 libgbm.so.1
ln –sfv libemgdsrv_um.so.1.5.15.3226 libemgdsrv_um.so
ln –sfv libemgdsrv_init.so.1.5.15.3226 libemgdsrv_init.so
ln –sfv libemgdglslcompiler.so.1.5.15.3226 libemgdglslcompiler.so
ln –sfv libEMGDPVR2D_WAYLANDWSEGL.so.1.5.15.3226
libEMGDPVR2D_WAYLANDWSEGL.so
ln –sfv libEMGDPVR2D_GBMWSEGL.so.1.5.15.3226
libEMGDPVR2D_GBMWSEGL.so
ln –sfv libEMGDPVR2D_DRIWSEGL.so.1.5.15.3226
libEMGDPVR2D_DRIWSEGL.so
ln –sfv libOpenVG.so.1.5.15.3226 libOpenVG.so
ln –sfv libOpenVGU.so.1.5.15.3226 libOpenVGU.so
ln –sfv libGLESv2.so.1.5.15.3226 libGLESv2.so.2
ln –sfv libGLES_CM.so.1.5.15.3226 libGLES_CM.so.1
ln –sfv libGLES_CM.so.1 libGLES_CM.so
ln –sfv libEMGDegl.so.1.5.15.3226 libEMGDegl.so
ln –sfv libEMGDScopeServices.so.1.5.15.3226 libEMGDScopeServices.so
ln –sfv libEMGDOGL.so.1.5.15.3226 libEMGDOGL.so
ln –sfv libEMG2d.so.1.5.15.3226 libEMGD2d.so
ln –sfv libEGL.so.1.5.15.3226 libEGL.so.1
a. Download the EMGD Wayland source from
http://download.meego.com/live/home:/matthew:/branches:/devel:/wayland/Trunk/src/
b. Create a working directory in which to extract the Wayland source code:
mkdir /root/wl/EMGD_WAYLAND/
rpm –Uvh wayland-0.1-4.1.src.rpm
cd /root/rpmbuild/SOURCES/
cp –vrf wayland-0.1.tar.bz2 /root/wl/EMGD_WAYLAND/
rm –vrf /root/rpmbuild
c. Copy wayland-demos emgd package:
rpm –Uvh wayland-demos-0.1-3.1.src.rpm
cd /root/rpmbuild/SOURCES/
cp –vrf wayland-demos-emgd.tar.gz /root/wl/EMGD_WAYLAND/
rm –vrf /root/rpmbuild
d. Install the extracted source files:
tar –xvzf wayland-demos-emgd.tar.gz
a. Rebuild the cairo package from step 5, replacing
the configuration option
‘--prefix=$WLD --enable-gl --enable-xcb’
with
‘--prefix=$WLD --enable-glesv2 --enable-xcb’
b. Download the Weston source from
git://anongit.freedesktop.org/wayland/Weston
c. Compile and install Weston: