[CentOS-virt] Fwd: Building Xen on RHEL7

Fri Dec 20 23:25:51 UTC 2013
Karanbir Singh <mail-lists at karan.org>



-------- Original Message --------
Subject: Building Xen on RHEL7
Date: Thu, 19 Dec 2013 18:57:22 +0000
From: Wei Liu <wei.liu2 at citrix.com>
To: <centos-virt at centos.org>

Hi all

This is a record of how I build Xen on RHEL 7. Hope this is helpful for
people who want to package Xen for the upcoming CentOS 7. Basically it's
not too much hassle to build Xen on RHEL 7. I'm in no way a packaging
expert on RPM-based systems so I just list what's needed.

The Yum repo I'm using is the public beta mirror at
https://mirrors.fedoraproject.org/publiclist/RHEL/7/x86_64/. I cloned
Xen tree from git://xenbits.xen.org/xen.git and used master branch.

Dependences and requirements are listed by components.

# To make top level ./configure pass:
  yum install -y gcc python-devel acpica-tools libuuid-devel ncurses-devel
  glib2-devel libaio-devel yajl-devel zlib-devel

I also need to install dev86. I downloaded the latest version from
http://www.debath.co.uk/dev86/ and installed it by hand. I noticed
there's a dev86 package in Xen4Centos repo. We should be able to reuse
that.

And we also need to do
  ln -s /lib64/libcrypto.so.1.0.1e /lib64/libcrypto.so
otherwise configure complains it cannot find libcrypto while that
library is actually there.

There's no markdown library in existing yum repo so some documents won't
be built but that's not critical.

And optionally if you want to use oxenstored:
  yum install -y ocaml

# To build tools:
## To build hvmloader:
  yum install -y glibc-devel.i686

## To build qemu-xen-traditional
  yum install -y SDL-devel

## To build qemu-xen-upstream
  yum install -y pixman-devel

# To build stubdom
  yum install -y texinfo

By now you should be able to just run "./configure; make dist" in top
level Xen source code directory without getting any error (hopefully).
There's warnings though because gcc 4.8 has stricter check than previous
versions.

I didn't build blktap, as RHEL 7 uses 3.10 kernel and Xen now has
upstream QEMU, which should be able to cover all use cases. However
default kernel only has frontend supports enabled (built as module), so
we might need to alter its config or supply alternative Dom0 kernel.

Have fun and Merry Christmas.

Wei.