I am trying to build Xen from on-src-b79. According to opensolaris website, all xVM sources should be in the on-src-b79 tree, and no additional sources are required. I followed the procedure for doing the nightly build, and I expected that, as a result I will build, along with the Solaris kernel, the xen.gz image. I was hoping to copy that xen.gz image to my test machine, so I can boot with my own copy of Xen. I was sure that xen.gz was needed, because the grub boot menu for xVM requires that file. However, the nightly build did not produce xen.gz, and grepping nightly.log for "xen" didn''t show any build errors. When I searched the proto/root_i386 directory, produced as part of the build, for filenames containing the string "xen", this is what I saw: ./platform/i86xpv/kernel/drv/amd64/xenbus ./platform/i86xpv/kernel/drv/amd64/xencons ./platform/i86xpv/kernel/drv/xencons.conf ./platform/i86xpv/kernel/drv/xenbus ./platform/i86xpv/kernel/drv/xencons ./usr/platform/i86xpv/include/sys/xen_errno.h ./usr/platform/i86xpv/include/sys/xen_mmu.h ./usr/lib/devfsadm/linkmod/SUNW_xen_link.so My question is: why wasn''t xen.gz built as part of the nightly build? What do I need to do to build and run my own copy of Xen? This message posted from opensolaris.org
Alexandra (Sasha) Fedorova wrote:> I am trying to build Xen from on-src-b79. According to opensolaris website, all xVM sources should be in the on-src-b79 tree, and no additional sources are required. I followed the procedure for doing the nightly build, and I expected that, as a result I will build, along with the Solaris kernel, the xen.gz image. I was hoping to copy that xen.gz image to my test machine, so I can boot with my own copy of Xen. I was sure that xen.gz was needed, because the grub boot menu for xVM requires that file. > > However, the nightly build did not produce xen.gz, and grepping nightly.log for "xen" didn''t show any build errors. When I searched the proto/root_i386 directory, produced as part of the build, for filenames containing the string "xen", this is what I saw: > > ./platform/i86xpv/kernel/drv/amd64/xenbus > ./platform/i86xpv/kernel/drv/amd64/xencons > ./platform/i86xpv/kernel/drv/xencons.conf > ./platform/i86xpv/kernel/drv/xenbus > ./platform/i86xpv/kernel/drv/xencons > ./usr/platform/i86xpv/include/sys/xen_errno.h > ./usr/platform/i86xpv/include/sys/xen_mmu.h > ./usr/lib/devfsadm/linkmod/SUNW_xen_link.so > > My question is: why wasn''t xen.gz built as part of the nightly build? What do I need to do to build and run my own copy of Xen?The xen sources are in a different gate.. You need to grab the xen related sources which match the build of on-src... e.g. for b79 http://dlc.sun.com/osol/on/downloads/b79/xvm-src.tar.bz2 In there, you''ll see a xen.hg with mercurial mq patches required to build Xen on/for a Solaris dom0. I believe b79 is based on 3.0.4. Build 89 which should be available soon is based on 3.1.4. MRJ
Hi Mark, Would you please iterate on this topic? What I want to know are: 1. What are the procedures (step by step) to build xen.gz? Are these the same as Xen on Linux? What are the build tools and how to specify them? 2. How to update the newly built xen.gz? Is there a same tool as Install? -baolu On Tue, May 20, 2008 at 4:43 AM, Mark Johnson <Mark.Johnson@sun.com> wrote:> > > Alexandra (Sasha) Fedorova wrote: > > I am trying to build Xen from on-src-b79. According to opensolaris > website, all xVM sources should be in the on-src-b79 tree, and no additional > sources are required. I followed the procedure for doing the nightly build, > and I expected that, as a result I will build, along with the Solaris > kernel, the xen.gz image. I was hoping to copy that xen.gz image to my test > machine, so I can boot with my own copy of Xen. I was sure that xen.gz was > needed, because the grub boot menu for xVM requires that file. > > > > However, the nightly build did not produce xen.gz, and grepping > nightly.log for "xen" didn''t show any build errors. When I searched the > proto/root_i386 directory, produced as part of the build, for filenames > containing the string "xen", this is what I saw: > > > > ./platform/i86xpv/kernel/drv/amd64/xenbus > > ./platform/i86xpv/kernel/drv/amd64/xencons > > ./platform/i86xpv/kernel/drv/xencons.conf > > ./platform/i86xpv/kernel/drv/xenbus > > ./platform/i86xpv/kernel/drv/xencons > > ./usr/platform/i86xpv/include/sys/xen_errno.h > > ./usr/platform/i86xpv/include/sys/xen_mmu.h > > ./usr/lib/devfsadm/linkmod/SUNW_xen_link.so > > > > My question is: why wasn''t xen.gz built as part of the nightly build? > What do I need to do to build and run my own copy of Xen? > > The xen sources are in a different gate.. You need to > grab the xen related sources which match the build > of on-src... e.g. for b79 > http://dlc.sun.com/osol/on/downloads/b79/xvm-src.tar.bz2 > > In there, you''ll see a xen.hg with mercurial mq patches > required to build Xen on/for a Solaris dom0. > > I believe b79 is based on 3.0.4. Build 89 which > should be available soon is based on 3.1.4. > > > > > > > MRJ > > _______________________________________________ > xen-discuss mailing list > xen-discuss@opensolaris.org >
Hi Sasha, The build process works on my OpenSolaris box. Thanks. The only difference is I put [paths] default=/home/username/Xen/xen.hg in xen.hg/.hg/hgrc. There is an onnv-gate repository in the same box. Changing ~/.hgrc may impact each other. By the way, can I use hg clone to copy a xvm repository and use hg pull -u to keep it updated? (just like the onnv repository) -baolu On Wed, May 21, 2008 at 1:37 PM, Alexandra (Sasha) Fedorova < fedorova@cs.sfu.ca> wrote:> Hi Lu, > > Since I''ve just gone through the build process (with the help from Mark, > Max and Jurgen), I have documented it, so my instructions are below. You > might also want to check this thread: > http://www.opensolaris.org/jive/thread.jspa?threadID=60833&tstart=0 > > 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. Aet 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 username@youdomain.com > 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. Fr60 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. Yon can copy them to the /boot > directory on your machine, as well as to the platfrom-specific directory. > For me, it''s boot/amd64. > > I cannot answer your question about Install. I''ll let Mark answer that. > > -- Sasha > > > On Wed, 21 May 2008, Lu Baolu wrote: > > Hi Mark, >> >> Would you please iterate on this topic? >> >> What I want to know are: >> >> 1. What are the procedures (step by step) to build xen.gz? Are these the >> same as Xen on Linux? What are the build tools and how to specify them? >> >> 2. How to update the newly built xen.gz? Is there a same tool as Install? >> >> >> -baolu >> >> On Tue, May 20, 2008 at 4:43 AM, Mark Johnson <Mark.Johnson@sun.com> >> wrote: >> >> >>> >>> Alexandra (Sasha) Fedorova wrote: >>> >>>> I am trying to build Xen from on-src-b79. According to opensolaris >>>> >>> website, all xVM sources should be in the on-src-b79 tree, and no >>> additional >>> sources are required. I followed the procedure for doing the nightly >>> build, >>> and I expected that, as a result I will build, along with the Solaris >>> kernel, the xen.gz image. I was hoping to copy that xen.gz image to my >>> test >>> machine, so I can boot with my own copy of Xen. I was sure that xen.gz >>> was >>> needed, because the grub boot menu for xVM requires that file. >>> >>>> >>>> However, the nightly build did not produce xen.gz, and grepping >>>> >>> nightly.log for "xen" didn''t show any build errors. When I searched the >>> proto/root_i386 directory, produced as part of the build, for filenames >>> containing the string "xen", this is what I saw: >>> >>>> >>>> ./platform/i86xpv/kernel/drv/amd64/xenbus >>>> ./platform/i86xpv/kernel/drv/amd64/xencons >>>> ./platform/i86xpv/kernel/drv/xencons.conf >>>> ./platform/i86xpv/kernel/drv/xenbus >>>> ./platform/i86xpv/kernel/drv/xencons >>>> ./usr/platform/i86xpv/include/sys/xen_errno.h >>>> ./usr/platform/i86xpv/include/sys/xen_mmu.h >>>> ./usr/lib/devfsadm/linkmod/SUNW_xen_link.so >>>> >>>> My question is: why wasn''t xen.gz built as part of the nightly build? >>>> >>> What do I need to do to build and run my own copy of Xen? >>> >>> The xen sources are in a different gate.. You need to >>> grab the xen related sources which match the build >>> of on-src... e.g. for b79 >>> http://dlc.sun.com/osol/on/downloads/b79/xvm-src.tar.bz2 >>> >>> In there, you''ll see a xen.hg with mercurial mq patches >>> required to build Xen on/for a Solaris dom0. >>> >>> I believe b79 is based on 3.0.4. Build 89 which >>> should be available soon is based on 3.1.4. >>> >>> >>> >>> >>> >>> >>> MRJ >>> >>> _______________________________________________ >>> xen-discuss mailing list >>> xen-discuss@opensolaris.org >>> >>> >>