Wayland
wayland的编译
准备工作
基础知识
- 具有lfs编译经验
- 一个可用的LFS系统(仅在LFS 7.1 64位版本验证过,其他版本没有测试)
设置环境变量
WLD=/usr/ LD_LIBRARY_PATH=$WLD/lib64 PKG_CONFIG_PATH=$WLD/lib64/pkgconfig/:$WLD/share/pkgconfig/ ACLOCAL="aclocal -I $WLD/share/aclocal" export WLD LD_LIBRARY_PATH PKG_CONFIG_PATH ACLOCAL
export XORG_CONFIG="--prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man --localstatedir=/var"
安装一些基本工具
openssl
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz tar -xvpf openssl-1.0.1c.tar.gz cd openssl-1.0.1c patch -Np1 -i ../openssl-1.0.1c-fix_manpages-1.patch && ./config --prefix=/usr zlib-dynamic --openssldir=/etc/ssl shared && make make install
安装 wget
wget http://ftp.gnu.org/gnu/wget/wget-1.14.tar.xz tar -xvpf wget-1.14.tar.xz cd wget-1.14 ./configure --prefix=/usr \ --sysconfdir=/etc \ --with-ssl=openssl && make make install
安装 git
http://git-core.googlecode.com/files/git-1.8.0.tar.gz
./configure --without-python
安装 libffi
install libffi
wget ftp://sourceware.org/pub/libffi/libffi-3.0.11.tar.gz tar -xvpf libffi-3.0.11.tar.gz cd libffi-3.0.11 ./configure --prefix=/usr && make -j10 make install
安装 expat
install expat
安装 wayland
git clone git://anongit.freedesktop.org/wayland/wayland
cd wayland ./autogen.sh --prefix=$WLD --disable-documentation make -j10 make install
libpthread-stubs-0.3
wget http://xcb.freedesktop.org/dist/libpthread-stubs-0.3.tar.bz2 tar -xvpf libpthread-stubs-0.3.tar.bz2 cd libpthread-stubs-0.3 ./configure --prefix=/usr && make -j8 make install
libpciaccess
http://xorg.freedesktop.org/archive/individual/lib/libpciaccess-0.13.1.tar.gz tar -xvpf libpciaccess-0.13.1.tar.gz cd libpciaccess-0.13.1 ./configire --prefix=/usr make make install
安装 drm
git clone git://anongit.freedesktop.org/git/mesa/drm cd drm ./autogen.sh --prefix=$WLD make -j8 && make install
安装 util-macros-1.17
wget http://xorg.freedesktop.org/releases/individual/util/util-macros-1.17.tar.bz2 tar -xvpf util-macros-1.17.tar.bz2 cd util-macros-1.17 ./configure --prefix=$WLD make && make install
cat > proto-7.7.md5 << "EOF" 1a05fb01fa1d5198894c931cf925c025 bigreqsproto-1.1.2.tar.bz2 98482f65ba1e74a08bf5b056a4031ef0 compositeproto-0.4.2.tar.bz2 998e5904764b82642cc63d97b4ba9e95 damageproto-1.2.1.tar.bz2 4ee175bbd44d05c34d43bb129be5098a dmxproto-2.3.1.tar.bz2 2eb74959684f47c862081099059a11ab dri2proto-2.6.tar.bz2 e7431ab84d37b2678af71e29355e101d fixesproto-5.0.tar.bz2 c5f4f1fb4ba7766eedbc9489e81f3be2 fontsproto-2.1.2.tar.bz2 d1ff0c1acc605689919c1ee2fc9b5582 glproto-1.4.15.tar.bz2 13c8aedaf98a92e282b7e456c0a5bed9 inputproto-2.2.tar.bz2 677ea8523eec6caca86121ad2dca0b71 kbproto-1.0.6.tar.bz2 597491c0d8055e2a66f11350c4985775 randrproto-1.3.2.tar.bz2 1b4e5dede5ea51906f1530ca1e21d216 recordproto-1.14.2.tar.bz2 a914ccc1de66ddeb4b611c6b0686e274 renderproto-0.11.1.tar.bz2 cfdb57dae221b71b2703f8e2980eaaf4 resourceproto-1.2.0.tar.bz2 edd8a73775e8ece1d69515dd17767bfb scrnsaverproto-1.2.2.tar.bz2 c3b348c6e2031b72b11ae63fc7f805c2 videoproto-2.3.1.tar.bz2 5f4847c78e41b801982c8a5e06365b24 xcmiscproto-1.2.2.tar.bz2 eaac343af094e6b608cf15cfba0f77c5 xextproto-7.2.1.tar.bz2 120e226ede5a4687b25dd357cc9b8efe xf86bigfontproto-1.2.0.tar.bz2 a036dc2fcbf052ec10621fd48b68dbb1 xf86dgaproto-2.1.tar.bz2 1d716d0dac3b664e5ee20c69d34bc10e xf86driproto-2.1.1.tar.bz2 e793ecefeaecfeabd1aed6a01095174e xf86vidmodeproto-2.3.1.tar.bz2 9959fe0bfb22a0e7260433b8d199590a xineramaproto-1.2.1.tar.bz2 d4d241a4849167e4e694fe73371c328c xproto-7.0.23.tar.bz2 EOF mkdir proto && cd proto && grep -v '^#' ../proto-7.7.md5 | awk '{print $2}' | wget -i- -c \ -B http://xorg.freedesktop.org/releases/individual/proto/ && md5sum -c ../proto-7.7.md5 export XORG_PREFIX="/usr" export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \ --mandir=$XORG_PREFIX/share/man --localstatedir=/var" for package in $(grep -v '^#' ../proto-7.7.md5 | awk '{print $2}') do packagedir=${package%.tar.bz2} tar -xf $package pushd $packagedir ./configure $XORG_CONFIG make install popd rm -r $packagedir done
安装pkg-config
安装 makedepend-1.0.4
wget http://xorg.freedesktop.org/releases/individual/util/makedepend-1.0.4.tar.bz2 tar -xvpf makedepend-1.0.4.tar.bz2 cd makedepend-1.0.4 ./configure $XORG_CONFIG && make make install
安装 libxml2-2.9.0
wget http://xmlsoft.org/sources/libxml2-2.9.0.tar.gz tar -xvpf libxml2-2.9.0.tar.gz cd libxml2-2.9.0 ./configure --prefix=/usr --disable-static && make
安装libxslt
wget http://xmlsoft.org/sources/libxslt-1.1.27.tar.gz tar -xvpf libxslt-1.1.27.tar.gz cd libxslt-1.1.27 ./configure --prefix=/usr --disable-static && make make install
安装Python2.7.x
wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.xz tar -xvpf Python-2.7.3.tar.xz cd Python-2.7.3 sed -i "s/ndbm_libs = \[\]/ndbm_libs = ['gdbm', 'gdbm_compat']/" setup.py && ./configure --prefix=/usr --enable-shared && make -j8
安装xcb-proto-1.7.1
wget http://xcb.freedesktop.org/dist/xcb-proto-1.7.1.tar.bz2 tar -xvpf xcb-proto-1.7.1.tar.bz2 cd xcb-proto-1.7.1 ./configure --prefix=/usr make && make install
安装libXau
wget http://xorg.freedesktop.org/releases/individual/lib/libXau-1.0.7.tar.bz2 tar -xvpf libXau-1.0.7.tar.bz2 cd libXau-1.0.7 ./configure --prefix=/usr make make install
安装libXdmcp
wget http://xorg.freedesktop.org/releases/individual/lib/libXdmcp-1.1.1.tar.bz2 tar -xvpf libXdmcp-1.1.1.tar.bz2 cd libXdmcp-1.1.1 ./configure --prefix=/usr make make install
安装libxcb
wget http://xcb.freedesktop.org/dist/libxcb-1.8.1.tar.bz2 tar -xvpf libxcb-1.8.1.tar.bz2 cd libxcb-1.8.1 ./configure $XORG_CONFIG make make install
安装 Xorg lib
cat > lib-7.7.md5 << "EOF" 84c66908cf003ad8c272b0eecbdbaee3 xtrans-1.2.7.tar.bz2 78b4b3bab4acbdf0abcfca30a8c70cc6 libX11-1.5.0.tar.bz2 71251a22bc47068d60a95f50ed2ec3cf libXext-1.3.1.tar.bz2 645f83160cf7b562734e2038045106d1 libFS-1.0.4.tar.bz2 471b5ca9f5562ac0d6eac7a0bf650738 libICE-1.0.8.tar.bz2 766de9d1e1ecf8bf74cebe2111d8e2bd libSM-1.2.1.tar.bz2 7a773b16165e39e938650bcc9027c1d5 libXScrnSaver-1.2.2.tar.bz2 a6f137ae100e74ebe3b71eb4a38c40b3 libXt-1.1.3.tar.bz2 a4efff8de85bd45dd3da124285d10c00 libXmu-1.1.1.tar.bz2 7ae7eff7a14d411e84a67bd166bcec1a libXpm-3.5.10.tar.bz2 f39942f2cab379fc9b4c3731bf191b84 libXaw-1.0.11.tar.bz2 678071bd7f9f7467e2fc712d81022318 libXfixes-5.0.tar.bz2 a60e0b5c276d0aa9e2d3b982c98f61c8 libXcomposite-0.4.3.tar.bz2 ee62f4c7f0f16ced4da63308963ccad2 libXrender-0.9.7.tar.bz2 52efa81b7f26c8eda13510a2fba98eea libXcursor-1.1.13.tar.bz2 44774e1a065158b52f1a0da5100cebec libXdamage-1.1.3.tar.bz2 a2a861f142c3b4367f14fc14239fc1f7 libfontenc-1.1.1.tar.bz2 6851da5dae0a6cf5f7c9b9e2b05dd3b4 libXfont-1.4.5.tar.bz2 78d64dece560c9e8699199f3faa521c0 libXft-2.3.1.tar.bz2 78ee882e1ff3b192cf54070bdb19938e libXi-1.6.1.tar.bz2 cb45d6672c93a608f003b6404f1dd462 libXinerama-1.1.2.tar.bz2 92473da2fccf5fac665be4fa4f2037fa libXrandr-1.3.2.tar.bz2 80d0c6d8522fa7a645e4f522e9a9cd20 libXres-1.0.6.tar.bz2 e8abc5c00c666f551cf26aa53819d592 libXtst-1.2.1.tar.bz2 5e1ac203ccd3ce3e89755ed1fbe75b0b libXv-1.0.7.tar.bz2 3340c99ff556ea2457b4be47f5cb96fa libXvMC-1.0.7.tar.bz2 b7f38465c46e7145782d37dbb9da8c09 libXxf86dga-1.1.3.tar.bz2 ffd93bcedd8b2b5aeabf184e7b91f326 libXxf86vm-1.1.2.tar.bz2 782ced3a9e754dfeb53a8a006a75eb1a libdmx-1.1.2.tar.bz2 399a419ac6a54f0fc07c69c9bdf452dc libpciaccess-0.13.1.tar.bz2 19e6533ae64abba0773816a23f2b9507 libxkbfile-1.0.8.tar.bz2 EOF mkdir lib && cd lib && grep -v '^#' ../lib-7.7.md5 | awk '{print $2}' | wget -i- -c \ -B http://xorg.freedesktop.org/releases/individual/lib/ && md5sum -c ../lib-7.7.md5 for package in $(grep -v '^#' ../lib-7.7.md5 | awk '{print $2}') do packagedir=${package%.tar.bz2} tar -xf $package pushd $packagedir case $packagedir in libXfont-[0-9]* ) ./configure $XORG_CONFIG --disable-devel-docs ;; libXt-[0-9]* ) ./configure $XORG_CONFIG \ --with-appdefaultdir=/etc/X11/app-defaults ;; * ) ./configure $XORG_CONFIG ;; esac make make install popd rm -r $packagedir /sbin/ldconfig done
安装 llvm
wget http://llvm.org/releases/3.1/llvm-3.1.src.tar.gz tar -xvpf llvm-3.1.src.tar.gz cd llvm-3.1.src wget http://llvm.org/releases/3.1/clang-3.1.src.tar.gz tar -xf clang-3.1.src.tar.gz -C tools && mv tools/clang-3.1.src tools/clang CC=gcc \ CXX=g++ \ ./configure --prefix=/usr \ --libdir=/usr/lib/llvm \ --sysconfdir=/etc \ --enable-shared \ --enable-libffi \ --enable-targets=all \ --disable-expensive-checks \ --disable-debug-runtime \ --disable-assertions \ --enable-optimized && make make install
安装 Mesa
Note on Mesa build failures: If you're not building in your Mesa git repo for the first time, the first thing to try is always "git clean -xfd", and possibly deleting your $WLD directory, as Mesa requires this often.
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 make && make install
wget ftp://ftp.freedesktop.org/pub/mesa/glu/glu-9.0.0.tar.bz2
make make install
./configure --prefix=/usr \
--sysconfdir=/etc \ --enable-texture-float \ --enable-gles1 \ --enable-gles2 \ --enable-openvg \ --enable-xa \ --enable-gbm \ --enable-gallium-egl \ --enable-gallium-gbm \ --enable-r600-llvm-compiler \ --enable-glx-tls \
--enable-shared-glapi \
--with-egl-platforms="x11,wayland,drm" \ --with-gallium-drivers="nouveau,r300,r600,radeonsi,svga,swrast" &&
make
安装 libxkbcommon
git clone git://people.freedesktop.org/xorg/lib/libxkbcommon.git cd libxkbcommon/ ./autogen.sh --prefix=$WLD --with-xkb-config-root=/usr/share/X11/xkb make && make install
pixman
git clone git://anongit.freedesktop.org/pixman cd pixman ./autogen.sh --prefix=$WLD make && make install
libpng
wget http://downloads.sourceforge.net/libpng/libpng-1.5.13.tar.xz tar -xvpf libpng-1.5.13.tar.xz cd libpng-1.5.13 ./configure --prefix=/usr --disable-static && make -j10 && make install
cairo
git clone git://anongit.freedesktop.org/cairo cd cairo ./autogen.sh --prefix=$WLD --enable-gl --enable-xcb --enable-tee make && make install
wayland demon
wayland demon
not wayland parts
wget http://dri.freedesktop.org/libdrm/libdrm-2.4.39.tar.bz2 tar -xvpf libdrm-2.4.39.tar.bz2 cd libdrm-2.4.39 ./configure --prefix=/usr \
--enable-udev \ --enable-vmwgfx-experimental-api &&
make make install
mtdev-1.1.3
wget http://bitmath.org/code/mtdev/mtdev-1.1.3.tar.bz2 tar -xvpf mtdev-1.1.3.tar.bz2 cd mtdev-1.1.3 ./configure --prefix=/usr --disable-static && make make install
libjpeg
wget http://www.ijg.org/files/jpegsrc.v8d.tar.gz tar -xvpf jpegsrc.v8d.tar.gz cd jpeg-8d ./configure --prefix=/usr && make make install
Linux PAM
wget http://linux-pam.org/library/Linux-PAM-1.1.6.tar.bz2 tar -xvpf Linux-PAM-1.1.6.tar.bz2 cd Linux-PAM-1.1.6 ./configure --prefix=/usr \ --sysconfdir=/etc \ --docdir=/usr/share/doc/Linux-PAM-1.1.6 \ --disable-nis && make -j10 make install
weston
git clone git://anongit.freedesktop.org/wayland/weston cd weston ./autogen.sh --prefix=$WLD make make install
配置 weston
cp weston.ini $HOME/.config/weston.ini export XDG_RUNTIME_DIR=/tmp weston
xbitmaps
wget http://xorg.freedesktop.org/releases/individual/data/xbitmaps-1.1.1.tar.bz2 tar -xvpf xbitmaps-1.1.1.tar.bz2 cd xbitmaps-1.1.1 ./configure $XORG_CONFIG
gperf
wget http://ftp.gnu.org/gnu/gperf/gperf-3.0.4.tar.gz tar -xvpf gperf-3.0.4.tar.gz cd gperf-3.0.4 ./configure --prefix=/usr --docdir=/usr/share/doc/gperf-3.0.4 && make && make install
xcb-util-0.3.9
wget http://xorg.freedesktop.org/releases/individual/xcb/xcb-util-0.3.9.tar.bz2 tar -xvpf xcb-util-0.3.9.tar.bz2 cd xcb-util-0.3.9 ./configure $XORG_CONFIG && make && make install
freetype-2.4.10
wget http://downloads.sourceforge.net/freetype/freetype-2.4.10.tar.bz2 tar -xvpf freetype-2.4.10.tar.bz2 cd freetype-2.4.10 ./configure --prefix=/usr --disable-static && make make install
fontconfig-2.10.
wget http://fontconfig.org/release/fontconfig-2.10.1.tar.bz2 tar -xvpf fontconfig-2.10.1.tar.bz2 cd fontconfig-2.10.1 ./configure --prefix=/usr \
--sysconfdir=/etc \ --localstatedir=/var \ --docdir=/usr/share/doc/fontconfig-2.10.1 \ --disable-docs \ --disable-static &&
make make install
Xorg App
cat > app-7.7.md5 << "EOF" 4a7a4a848c43c42f7d499b60666434a4 bdftopcf-1.0.3.tar.bz2 08e3f6b523da8b0af179f22f339508b2 iceauth-1.0.5.tar.bz2 c4a3664e08e5a47c120ff9263ee2f20c luit-1.1.1.tar.bz2 18c429148c96c2079edda922a2b67632 mkfontdir-1.0.7.tar.bz2 414fcb053418fb1418e3a39f4a37e0f7 mkfontscale-1.1.0.tar.bz2 e99172cbd72700eeeae99f64632b5dc2 sessreg-1.0.7.tar.bz2 1001771344608e120e943a396317c33a setxkbmap-1.3.0.tar.bz2 edce41bd7562dcdfb813e05dbeede8ac smproxy-1.0.5.tar.bz2 5c3c7431a38775caaea6051312a49bc9 x11perf-1.5.4.tar.bz2 cbcbd8f2156a53b609800bec4c6b6c0e xauth-1.0.7.tar.bz2 c9891d6a3f3129d56cede72daa0ba26c xbacklight-1.1.2.tar.bz2 5812be48cbbec1068e7b718eec801766 xcmsdb-1.0.4.tar.bz2 09f56978a62854534deacc8aa8ff3031 xcursorgen-1.0.5.tar.bz2 1ef08f4c8d0e669c2edd49e4a1bf650d xdpyinfo-1.3.0.tar.bz2 3d3cad4d754e10e325438193433d59fd xdriinfo-1.0.4.tar.bz2 2727c72f3eba0c23f8f6b2e618d195a2 xev-1.2.0.tar.bz2 c06067f572bc4a5298f324f27340da95 xgamma-1.0.5.tar.bz2 a0fcd2cb6ddd9f378944cc6f4f83cd7c xhost-1.0.5.tar.bz2 d2459d35b4e0b41ded26a1d1159b7ac6 xinput-1.6.0.tar.bz2 a0fc1ac3fc4fe479ade09674347c5aa0 xkbcomp-1.2.4.tar.bz2 37ed71525c63a9acd42e7cde211dcc5b xkbevd-1.1.3.tar.bz2 52ad6d8d87577a8ac736ab5488bec210 xkbutils-1.0.3.tar.bz2 e7f0d57b6ba49c384e9cf8c9ff3243c1 xkill-1.0.3.tar.bz2 9d0e16d116d1c89e6b668c1b2672eb57 xlsatoms-1.1.1.tar.bz2 760099f0af112401735801e3b9aa8595 xlsclients-1.1.2.tar.bz2 d9b65f6881afe0d6d9863b30e1081bde xmodmap-1.0.7.tar.bz2 6101f04731ffd40803df80eca274ec4b xpr-1.0.4.tar.bz2 d5529dc8d811efabd136ca2d8e857deb xprop-1.2.1.tar.bz2 9735173a84dca9b05e06fd4686196b07 xrandr-1.3.5.tar.bz2 ed2e48cf33584455d74615ad4bbe4246 xrdb-1.0.9.tar.bz2 2f63f88ad0dcecd33c8cf000f38e9250 xrefresh-1.0.4.tar.bz2 d44e0057d6722b25d5a314e82e0b7e7c xset-1.2.2.tar.bz2 b78a2da4cf128775031a5a3422fc0b78 xsetroot-1.1.0.tar.bz2 c88feb501083951a8f47a21aaeb1529d xvinfo-1.1.1.tar.bz2 2113126f9ac9c02bb8547c112c5d037e xwd-1.0.5.tar.bz2 9e8b58c8aa6172e87ab4f9cf3612fedd xwininfo-1.1.2.tar.bz2 3025b152b4f13fdffd0c46d0be587be6 xwud-1.0.4.tar.bz2 EOF for package in $(grep -v '^#' ../app-7.7.md5 | awk '{print $2}') do packagedir=${package%.tar.bz2} tar -xf $package pushd $packagedir ./configure $XORG_CONFIG make make install popd rm -r $packagedir done
XML-Parser-2.41
wget http://anduin.linuxfromscratch.org/sources/BLFS/svn/perl-modules/XML-Parser-2.41.tar.gz tar -xvpf XML-Parser-2.41.tar.gz cd XML-Parser-2.41 perl Makefile.PL && make && make install
intltool-0.50.2
wget http://launchpad.net/intltool/trunk/0.50.2/+download/intltool-0.50.2.tar.gz tar -xvpf intltool-0.50.2.tar.gz cd intltool-0.50.2 ./configure --prefix=/usr && make make install
xkeyboard-config-2.6
wget http://xorg.freedesktop.org/releases/individual/data/xkeyboard-config/xkeyboard-config-2.6.tar.bz2 tar -xvpf xkeyboard-config-2.6.tar.bz2 cd xkeyboard-config-2.6
./configure $XORG_CONFIG --with-xkb-rules-symlink=xorg && make
$ sudo groupadd weston-launch $ sudo usermod -a -G weston-launch $USER $ # Log all the way out (of X, etc.) $ sudo chown root weston-launch $ sudo chmod +s weston-launch $ weston-launch
GTK+3.6
icu4c
wget http://download.icu-project.org/files/icu4c/49.1.2/icu4c-49_1_2-src.tgz tar -xvpf icu4c-49_1_2-src.tgz cd source && ./configure --prefix=/usr && make make install
pcre-8.31
wget http://downloads.sourceforge.net/pcre/pcre-8.31.tar.bz2 tar -xvpf pcre-8.31.tar.bz2 pushd pcre-8.31 ./configure --prefix=/usr \ --docdir=/usr/share/doc/pcre-8.31 \ --enable-utf \ --enable-unicode-properties \ --enable-pcregrep-libz \ --enable-pcregrep-libbz2 \ --disable-static && make make install popd
glib
git clone git://git.gnome.org/glib pushd glib ./configure --prefix=/usr --with-pcre=system && make -j10 make install popd
harfbuzz-0.9.5
wget http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.5.tar.bz2 tar -xvpf harfbuzz-0.9.5.tar.bz2 pushd harfbuzz-0.9.5 ./configure --prefix=/usr && make -j10 make install popd
Pango-1.32.1
- Required
- Cairo-1.12.6
- glib-2.33
- Harfbuzz-0.9.5
- Xorg Libraries
wget http://ftp.gnome.org/pub/gnome/sources/pango/1.32/pango-1.32.1.tar.xz tar -xvpf pango-1.32.1.tar.xz pushd pango-1.32.1 ./configure --prefix=/usr --sysconfdir=/etc && make -j10 make uninstall popd
gdk-pixbuf-2.26.4
wget http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.26/gdk-pixbuf-2.26.4.tar.xz tar -xvpf gdk-pixbuf-2.26.4.tar.xz cd gdk-pixbuf-2.26.4 ./configure --prefix=/usr --without-libtiff make -j4 make install
dbus-1.6.8
groupadd -g 18 messagebus && useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \ -u 18 -g messagebus -s /bin/false messagebus wget http://dbus.freedesktop.org/releases/dbus/dbus-1.6.8.tar.gz tar -xvpf dbus-1.6.8.tar.gz cd dbus-1.6.8 ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --libexecdir=/usr/lib/dbus-1.0 \ --with-console-auth-dir=/run/console/ \ --without-systemdsystemunitdir \ --disable-systemd \ --disable-static && make make install cat > /etc/dbus-1/session-local.conf << "EOF" <!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> <busconfig> <!-- Search for .service files in /usr/local --> <servicedir>/usr/local/share/dbus-1/services</servicedir> </busconfig> EOF wget http://www.linuxfromscratch.org/blfs/downloads/svn/blfs-bootscripts-20120828.tar.bz2 tar -xvpf blfs-bootscripts-20120828.tar.bz2 cd blfs-bootscripts-20120828 make install-dbus
atk
git clone git://git.gnome.org/atk cd atk ./configure --prefix=/usr && make make install
at-spi2-core-2.6.1
wget http://ftp.gnome.org/pub/gnome/sources/at-spi2-core/2.6/at-spi2-core-2.6.1.tar.xz tar -xvpf at-spi2-core-2.6.1.tar.xz cd at-spi2-core-2.6.1 ./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib/at-spi2-core && make make install
at-spi2-atk-2.6.1
wget http://ftp.gnome.org/pub/gnome/sources/at-spi2-atk/2.6/at-spi2-atk-2.6.1.tar.xz tar -xvpf at-spi2-atk-2.6.1.tar.xz cd at-spi2-atk-2.6.1 ./configure --prefix=/usr && make make install
gtk+
For correct functionality with current Wayland you must use the GTK+ master branch. As a precursor to these steps you must have downloaded and compiled Wayland as per the building instructions.
GTK+ master also currently depends on an unstable release version of glib and atk. To avoid problems it is advisable to install this into the prefix used in the Wayland build instructions.
git clone git://git.gnome.org/gtk+ cd gtk+ ./configure --prefix=/usr --sysconfdir=/etc --disable-packagekit --enable-wayland-backend && make -j10 make install
GTK for wayland
UnZip-6.0
wget http://downloads.sourceforge.net/infozip/unzip60.tar.gz tar -xvpf unzip60.tar.gz cd unzip60 case `uname -m` in i?86) sed -i -e 's/DASM"/DASM -DNO_LCHMOD"/' unix/Makefile make -f unix/Makefile linux ;; *) sed -i -e 's/CFLAGS="-O -Wall/& -DNO_LCHMOD/' unix/Makefile make -f unix/Makefile linux_noasm ;; esac make prefix=/usr install
docbook-xml-4.5.zip
wget http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip mkdir docbook-xml unzip -x docbook-xml-4.5.zip -d docbook-xml cd docbook-xml install -v -d -m755 /usr/share/xml/docbook/xml-dtd-4.5 && install -v -d -m755 /etc/xml && chown -R root:root . && cp -v -af docbook.cat *.dtd ent/ *.mod /usr/share/xml/docbook/xml-dtd-4.5 if [ ! -e /etc/xml/docbook ]; then xmlcatalog --noout --create /etc/xml/docbook fi && xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.5//EN" \ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \ /etc/xml/docbook && xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.5" \ "file:///usr/share/xml/docbook/xml-dtd-4.5" \ /etc/xml/docbook && xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.5" \ "file:///usr/share/xml/docbook/xml-dtd-4.5" \ /etc/xml/docbook if [ ! -e /etc/xml/catalog ]; then xmlcatalog --noout --create /etc/xml/catalog fi && xmlcatalog --noout --add "delegatePublic" \ "-//OASIS//ENTITIES DocBook XML" \ "file:///etc/xml/docbook" \ /etc/xml/catalog && xmlcatalog --noout --add "delegatePublic" \ "-//OASIS//DTD DocBook XML" \ "file:///etc/xml/docbook" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateSystem" \ "http://www.oasis-open.org/docbook/" \ "file:///etc/xml/docbook" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateURI" \ "http://www.oasis-open.org/docbook/" \ "file:///etc/xml/docbook" \ /etc/xml/catalog
docbook-xsl-1.77.1
wget http://downloads.sourceforge.net/docbook/docbook-xsl-1.77.1.tar.bz2 tar -xvpf docbook-xsl-1.77.1.tar.bz2 cd docbook-xsl-1.77.1 install -v -m755 -d /usr/share/xml/docbook/xsl-stylesheets-1.77.1 && cp -v -R VERSION common eclipse epub extensions fo highlighting html \ htmlhelp images javahelp lib manpages params profiling \ roundtrip slides template tests tools webhelp website \ xhtml xhtml-1_1 \ /usr/share/xml/docbook/xsl-stylesheets-1.77.1 && ln -s VERSION /usr/share/xml/docbook/xsl-stylesheets-1.77.1/VERSION.xsl && install -v -m644 -D README /usr/share/doc/docbook-xsl-1.77.1/README.txt && install -v -m755 RELEASE-NOTES* NEWS* /usr/share/doc/docbook-xsl-1.77.1 if [ ! -d /etc/xml ]; then install -v -m755 -d /etc/xml; fi && if [ ! -f /etc/xml/catalog ]; then xmlcatalog --noout --create /etc/xml/catalog fi && xmlcatalog --noout --add "rewriteSystem" \ "http://docbook.sourceforge.net/release/xsl/1.77.1" \ "/usr/share/xml/docbook/xsl-stylesheets-1.77.1" \ /etc/xml/catalog && xmlcatalog --noout --add "rewriteURI" \ "http://docbook.sourceforge.net/release/xsl/1.77.1" \ "/usr/share/xml/docbook/xsl-stylesheets-1.77.1" \ /etc/xml/catalog && xmlcatalog --noout --add "rewriteSystem" \ "http://docbook.sourceforge.net/release/xsl/current" \ "/usr/share/xml/docbook/xsl-stylesheets-1.77.1" \ /etc/xml/catalog && xmlcatalog --noout --add "rewriteURI" \ "http://docbook.sourceforge.net/release/xsl/current" \ "/usr/share/xml/docbook/xsl-stylesheets-1.77.1" \ /etc/xml/catalog
gtk-doc-1.18
wget http://ftp.gnome.org/pub/gnome/sources/gtk-doc/1.18/gtk-doc-1.18.tar.xz tar -xvpf gtk-doc-1.18.tar.xz cd gtk-doc-1.18 ./configure --prefix=/usr && make make install
glib
git clone git://git.gnome.org/glib pushd glib ./autogen.sh --prefix=$WLD make && make install popd
atk
git clone git://git.gnome.org/atk pushd atk ./autogen.sh --prefix=$WLD make && make install popd
gobject-introspection
git clone git://git.gnome.org/gobject-introspection
gdk-pixbuf-2.26.4
wget http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.26/gdk-pixbuf-2.26.4.tar.xz tar -xvpf gdk-pixbuf-2.26.4.tar.xz cd gdk-pixbuf-2.26.4 ./configure --prefix=/usr --without-libtiff make -j4 make install
gtk+
git clone git://git.gnome.org/gtk+ pushd gtk+ ./autogen.sh --prefix=$WLD --enable-wayland-backend make && make install popd