Daniel P. Berrange wrote:
On Mon, Jan 21, 2008 at 04:50:29PM -0600, Schley Andrew Kutz wrote:-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1I spent the weekend attempting to get libvirt working on OS X Leopard 10.5.1. I was able to get it to compile, but not connect to libvirtd running on either my KVM or Xen servers. Here are the instructions for getting it to compile:1. Download libvirt-0.4.0 from the mirrors. 2. Use macports to install pkgconfig and gnutls 3. Configure your source: ./configure --without-xen --without-qemu4. Replace instances of 'hyper' in qemu/remote_protocol.x with 'long' and then follow the instructions on http://libvirt.org/windows.html to regen XDR structures.This is going to fail big time. 'hyper' is 64-bit in size, where as long is 32-bit. Any RPC calls which user hyper will crash and burn if you make this change. What errors do you get if you don't make this change ? There may be better ways to provide compatability.
This was essentially the problem that I hit when trying to port to Leopard also over the weekend. There is no hyper/64 bit support in the Mac-supplied rpcgen program.
There are two alternatives I can think of:Probably the simplest is to compile the RPC bindings which are generated on Linux and supplied with libvirt in CVS and the tarball (ie. remote_protocol.[ch]). We need to supply only the xdr_quad type and a handful of 64 bit functions. I did the same thing for Windows but in that case built my own version of a mini-XDR library with some contributions from glibc. What we could do is bundle this mini-XDR library with libvirt itself (or perhaps persuade gnulib to take it -- Jim?).
Another, less appealing, is to look at some of the modern XDR library replacements. Uli suggested one, but I've lost the link at the moment... Of course that involves porting those libraries to Mac and Windows, which may be a load of effort in itself.
Rich. -- Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/ Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 03798903
Description: S/MIME Cryptographic Signature