README.xspice: clone more repos, add some script lines and more

This helps build on a RHEL-6 machine
This commit is contained in:
Uri Lublin
2015-01-04 18:12:25 +02:00
parent 3a81e5faf0
commit e7b315dfe4

View File

@@ -44,7 +44,7 @@ fedora)
DRV_DIR=/usr/lib64/xorg/modules/drivers
XORG_CONF_DIR=/etc/X11
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-qxl
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-qxl xspice
sudo yum install spice-server-devel spice-protocol
cd xspice
@@ -64,15 +64,27 @@ any root permissions.
This assumes you already have spice-protocol and spice-server
installed into $TEST prefix below.
TEST=/store/test
grab xserver, xspice, xextproto and xkbcomp
TEST=/store/test ( or TEST=$(pwd)/testxspice )
mkdir -p $TEST/src
cd $TEST/src
# grab xserver, xspice, xextproto, xkbcomp and more
for src in \
git://anongit.freedesktop.org/xorg/proto/xextproto \
git://anongit.freedesktop.org/xorg/proto/x11proto \
git://anongit.freedesktop.org/xorg/proto/fontsproto \
git://anongit.freedesktop.org/xorg/app/xkbcomp \
git://anongit.freedesktop.org/xorg/xserver \
git://anongit.freedesktop.org/xorg/lib/libxtrans \
git://anongit.freedesktop.org/xorg/lib/libxkbfile \
git://git.freedesktop.org/git/spice/spice-protocol \
git://git.freedesktop.org/git/spice/spice ;
do
git clone $src;
done
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-qxl xspice
for src in git://anongit.freedesktop.org/xorg/proto/xextproto \
git://anongit.freedesktop.org/xorg/app/xkbcomp \
git://anongit.freedesktop.org/xorg/xserver \
git://anongit.freedesktop.org/xorg/lib/libxkbfile \
git://git.freedesktop.org/git/spice/spice-protocol
git://anongit.freedesktop.org/xorg/driver/xf86-video-qxl; do git clone $src; done
build and install into some non common prefix (not to overwrite
your existing server) - note that this is just for testing. This
@@ -80,35 +92,75 @@ should all work with the default server as well, but that server
requires root generally and this is undesireable for testing (and
running actually).
export PKG_CONFIG_PATH=${TEST}/lib/pkgconfig
export PKG_CONFIG_PATH=${TEST}/lib/pkgconfig:${TEST}/share/pkgconfig
export MAKEFLAGS="-j4"
#first build spice (or sudo yum install spice-devel or spice-server-devel)
sudo yum-builddep spice (or spice-server)
(cd spice-protocol; ./autogen.sh --prefix=$TEST && make install)
(cd spice; ./autogen.sh --prefix=$TEST && make install)
# now build xserver
sudo yum install xorg-x11-server-devel libxcb-util-devel xcb-util-keysyms-devel libXfont-devel
(cd xextproto; ./autogen.sh --prefix=$TEST --without-xmlto && make install)
(cd xserver; ./autogen.sh --prefix=$TEST && make install)
(cd xkbcomp; ./autogen.sh --prefix=$TEST && make install)
(cd x11proto; ./autogen.sh --prefix=$TEST && make install)
(cd fontsproto; ./autogen.sh --prefix=$TEST && make install)
(cd libxtrans; ./autogen.sh --prefix=$TEST && make install)
(cd libxkbfile; ./autogen.sh --prefix=$TEST && make install)
(cd spice-protocol; ./autogen.sh --prefix=$TEST --datadir=$TEST/lib && make install)
(cd xspice; ./autogen.sh --prefix=$TEST && make install)
(cd xkbcomp; ./autogen.sh --prefix=$TEST && make install)
# make sure DBUS_TYPE_UNIX_FD is defined (failed on my RHEL6 machine)
ADDSTR="#ifndef DBUS_TYPE_UNIX_FD\n"
ADDSTR+="#define DBUS_TYPE_UNIX_FD ((int) 'h')\n"
ADDSTR+="#endif"
sed -i "/define DBUS_TIMEOUT/ a$ADDSTR" \
xserver/hw/xfree86/os-support/linux/systemd-logind.c
# need ACLOCAL for libxtrans
export ACLOCAL="aclocal -I $TEST/share/aclocal"
(cd xserver; ./autogen.sh --prefix=$TEST && make install)
# and now xspice
(cd xspice; ./autogen.sh --prefix=$TEST --enable-xspice && make install)
mkdir -p $TEST/etc/X11
place the tested config below in $TEST/etc/X11/spiceqxl.xorg.conf.
cp xspice/examples/spiceqxl.xorg.conf.example $TEST/etc/X11/spiceqxl.xorg.conf
last bit is a little ugly (FIXME), copy over the xkb bits from the existing X11
installation:
mkdir -p $TEST/share/X11
cp -R /usr/share/X11/xkb $TEST/share/X11
# Possibly also build spice-vdagent:
sudo yum install libXrandr-devel libXinerama-devel
git clone git://anongit.freedesktop.org/spice/linux/vd_agent spice-vdagent
(cd spice-vdagent ; ./autogen.sh --prefix=$TEST && make install)
= 3. Running =
$XORG is either your own built $TEST/bin/Xorg or just the default Xorg
If you built your own Xorg server:
export PATH="$TEST/bin:$TEST/sbin:$PATH"
export LD_LIBRARY_PATH=${TEST}/lib
export XORG=$TEST/bin/Xorg # or /usr/bin/Xorg
== 3.1 Run Xorg directly ==
Run server with:
export XSPICE_PORT=5900
$XORG -noreset -config spiceqxl.xorg.conf :3.0
== 3.2 Run using the Xspice script ==
Or equivalently:
./xspice --port 5900 :3.0
Run X clients as usual by setting DISPLAY=:3.0
xspice/scripts/Xspice --port 5900 --disable-ticketing --xorg $XORG :3.0 [--vdagent]
(and many more options available -- see scripts/Xspice)
Run a spice client:
spicec -h localhost -p 5900
Run X clients as usual by setting DISPLAY=:3.0, for example
# DISPLAY=:3.0 firefox & or
# DISPLAY=:3.0 twm & DISPLAY=:3.0 xterm &
Run spice client:
sudo yum install virt-viewer
remote-viewer spice://localhost:5900