summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUri Lublin <uril@redhat.com>2015-01-04 18:12:25 +0200
committerUri Lublin <uril@redhat.com>2015-03-08 14:45:08 +0200
commite7b315dfe468eb6212e30c41a61e72486017ee57 (patch)
treef189aa283d7488c3df937daa79d8863803e5c2e7
parent3a81e5faf0d386885d81ec3f03ad644b93ac0250 (diff)
README.xspice: clone more repos, add some script lines and more
This helps build on a RHEL-6 machine
-rw-r--r--README.xspice92
1 files changed, 72 insertions, 20 deletions
diff --git a/README.xspice b/README.xspice
index 189f8b3..b04a2b1 100644
--- a/README.xspice
+++ b/README.xspice
@@ -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)
-mkdir -p $TEST/etc/X11
-place the tested config below in $TEST/etc/X11/spiceqxl.xorg.conf.
+# 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
+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 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 a spice client:
-spicec -h localhost -p 5900
+Run spice client:
+sudo yum install virt-viewer
+remote-viewer spice://localhost:5900