Thanks, everyone for your help. I have successfully built Xen, and I have 
documented the process. Posting it here for everyone's reference.

1. Download Xen sources. They must match the build of Solaris that you are
using. For example, if you are using on-src-b79 (OpenSolaris build 79), you
would get your Xen sources here at the gate
http://dlc.sun.com/osol/on/downloads/b79/. For your convenience, the Xen
source file xvm-src.tar.bz2 has already been downloaded to the directory
/cs/systems/Solaris-source/on-src-b79.


2. Unpack the sources bzip2 -dc xvm-src.tar.bz2 | tar xf -

Now you have the source from the original Xen's Mercurial repository. Since
the version of Xen for Solaris xVM is different than the original, you need
to apply the patches. The patches are found in the tree source directory that
you have downloaded under xen.hg/.hg.

3. Set up the environmental files for the Mercurial repository. Create a
~/.hqrc file with the following contents:

  [extensions]
  hgext.mq=

  [paths]
  default=/home/username/Xen/xen.hg

(Substitute the directory with the path to YOUR Xen directory.)


3. Add the following variables to your environment (i.e., in your .cshrc or
.bashrc file):

   setenv EMAIL [EMAIL PROTECTED]
   setenv XVM_WS /home/username/Xen/
   setenv EDITOR vi
   setenv SOLARIS_BUILD_TOOLS /opt


4. In xen.hg, run:

   hg qpush -a


This will apply the Solaris-specific patches to the main Xen tree.

5. From xen.hg type ../sunos.hg/bin/build-all. This will build the sources
and produce installable packages. xen.gz and xen-syms will be in

/home/username/Xen/proto/install/boot (32-bit build) and in 
/home/username/Xen/proto/install/boot/amd64 (64-bit build). 

6. Copy the 32-bit images to the /boot directory on your machine, and 64-bit 
images to /boot/amd64. (Note, this example is for my build, it is quite 
possible that you will see a platform-specific directory other than amd64 on 
your machine). Save the xen.gz and xen-syms under a different name, e.g., 
xen-myname.gz, so you can always revert to original images if the ones that you 
built do not boot.

7. Add the entry corresponding to your xen images to /boot/grub/menu.lst -- 
this should be self-explanatory if you look at menu.lst. Reboot the machine and 
choose to boot from your images in the grub menu! If Xen complains that the ELF 
image of the guest domain is incompatible with Xen, you probably didn't copy 
your xen.gz to the right directory (e.g., mixed up the 32- and 64- bit builds). 
I believe that in Xen versions beyond 3.0 this won't be the problem -- i.e., 
you'd be able to boot a 32-bit guest over a 64-bit Xen, but I don't know for 
sure. 

8. I am not yet familiar with the process of installing the entire collection 
of packages (including tools and libraries). Perhaps someone more knowledgeable 
could elaborate?
 
 
This message posted from opensolaris.org
_______________________________________________
xen-discuss mailing list
[email protected]

Reply via email to