[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-API] how to compile XCP source?



Hi Mike,

On Sat, Mar 2, 2013 at 2:30 AM, Mike McClurg <mike.mcclurg@xxxxxxxxxx> wrote:
On 28/02/13 12:22, George Shuklin wrote:
The main problem is not 'environment out of the box' but the exact
versions of libraries, compilers and so on.  Because xapi-libs heavily
depends on random set of libraries outside the xapi source tree, and
there is no way to know witch version to use. Sometimes there is a
situation that xapi depends on library foo and bar, and foo (in
upstream) depends on different (conflicting) version of bar. And it
definitively not compilable on centos5 (because of outdated ocaml for
el5)...


To be honest I was strong supporter for xapi. But time flows - XCP 0.5,
XCP 1.1, XCP 1.5, XCP 1.6. Every time we found an working ISO with
working binaries we can use like 'free version of XenServer'. But no any
modification of code was possible (no way to build original ISO, or, at
least, original xapi's RPM). That was definitively not a 'free as
freedom', just 'open source'. Some minor stuff in /etc/xensource/scripts
and /opt/xensource/sm with patches, but no any significant changes was
possible. We actually have a huge (over 3k lines) code which simply
doing stuff 'around' xapi instead adding that functions to original code.

Now we got XCP 1.6. Again there is a significant set of changes we want
to add (and share with others!) - but we can't, and we continue to add
'hacks around'. Really, I not very happy about this and start to
thinking about switching to something more 'free as freedom'
visualization stack.

Lack of 'scrach your own itch' is very and very disappointing. I really
don't want to switch away from xapi and want to see some cooperation...

Hi George,

Thanks a lot for the honest feedback. While I'm sorry that things haven't improved much by now, I can honestly say that we really are making it a priority to allow people to build XCP components themselves, and to contribute back to the project. Most of this work is going to be around making the development branches of the XCP toolstack buildable, but we still need to let people using XCP 1.6 to easily rebuild XCP 1.6 components.

To help with this problem, I've created a new repo on github called xcp-sdk [1]. Right now, this is basically just a script that can be run in a CentOS 5.7 environment (though I've only tested it in an XCP 1.6 dom0 running in a VM). The idea is that you can download the prepare script [2], run it, and then do 'cd xen-api; make' to rebuild xapi. It will download a bunch of build dependencies that I've recently put up on downloads.xen.org [3] and install some other stuff from EPEL for you as well.
Awesome.
 

It's not much, but it's a start. It probably won't let you build the xapi RPM, and it also probably won't let you rebuild the hypervisor or kernel, but that won't take very much more effort to do. I figured I'd share this with everyone now, in the hopes that we can improve it together. Give it a try, and let me know how you get on with it. If you have any issues, raise them on the github repo's issue tracker, and mail the list.
I tried the prepare script [2] on CentOS 5.9 just now, and I got error below.

......
error: Failed dependencies:
        kernel-kdump = 2.6.32.43-0.4.1.xs1.6.10.734.170748 is needed by kernel-kdump-devel-2.6.32.43-0.4.1.xs1.6.10.734.170748.i686
        kernel-xen = 2.6.32.43-0.4.1.xs1.6.10.734.170748 is needed by kernel-xen-devel-2.6.32.43-0.4.1.xs1.6.10.734.170748.i686
        libev.so.4 is needed by ocaml-lwt-2.3.1-2.i686
        libev.so.4 is needed by ocaml-obus-devel-1.1.3-3.i686
        libvhd.so.0 is needed by xapi-libs-devel-0.1-858.i686
        libfsimage.so.1.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenctrl.so.4.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenguest.so.4.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenlight.so.1.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenstore.so.3.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenvchan.so.1.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxlutil.so.1.0 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        xen-hypervisor = 4.1.3 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        xen-tools = 4.1.3 is needed by xen-devel-4.1.3-1.6.10.513.23557.i686
        libxenctrl.so.4.0 is needed by xen-device-model-1.6.10-54.7533.i686
        libxenguest.so.4.0 is needed by xen-device-model-1.6.10-54.7533.i686
        libxenstore.so.3.0 is needed by xen-device-model-1.6.10-54.7533.i686
......

Any ideas? Thanks.

------
Regards,
Felix
 

Mike

[1] https://github.com/mcclurmc/xcp-sdk
[2] https://raw.github.com/mcclurmc/xcp-sdk/master/prep.sh
[3] http://downloads.xen.org/XCP/61809c/build-deps

_______________________________________________
Xen-api mailing list
Xen-api@xxxxxxxxxxxxx
http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api

_______________________________________________
Xen-api mailing list
Xen-api@xxxxxxxxxxxxx
http://lists.xen.org/cgi-bin/mailman/listinfo/xen-api

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.