[libvirt] Works: libvirt client on OS X 10.5.6

Daniel Veillard veillard at redhat.com
Wed May 20 08:20:22 UTC 2009


On Fri, May 08, 2009 at 08:19:40AM -0500, Schley Andrew Kutz wrote:
> Happy to do it, I just need permission to put a file there.  
> Additionally, you can grab the binaries at 
> http://files.lostcreations.com/libvirt-0.6.3-bin.tar.gz and 
> http://files.lostcreations.com/libvirt-java-0.2.1-bin.tar.gz. Both 
> archives belong in /opt. They will decompress to libvirt-0.6.3 and 
> libvirt-java-0.2.1 respectively. The latter depends on the former's 
> location. Additionally, the libvirt binaries depend on gnutls and all of 
> its dependencies existing in /opt/local (the default MacPorts root 
> location).

  Okidoc, I have mirrored those 2 at
    ftp://libvirt.org/libvirt/osx/

I guess the best way if you want to maintain OS X builds is to create
a specific subdir on the HTTP server (or even better FTP) that you
can populate with updates, and I can mirror them for example twice a
day. Just tell me where you end up creating the repository !

>> On Thu, May 07, 2009 at 11:50:25PM -0500, Schley Andrew Kutz wrote:
>>> Getting libvirt-0.6.3 (client) to compile on OS X
>>>
>>> - Use MacPorts to install gnutls (and its several dependencies)
>>>
>>> - Set environment variables:
>>>
>>>  export LDFLAGS="-L/opt/local/lib"
>>>  export CPPFLAGS="-I/opt/local/include"
>>>  export MACOSX_DEPLOYMENT_TARGET=10.4

  Hum ...

>>> - Configure
>>>
>>> --prefix=/opt/libvirt/ --without-sasl --without-avahi --without- 
>>> polkit
>>> --without-python --without-xen --without-qemu --without-lxc -- 
>>> without-
>>> openvz --without-libvirtd --without-uml
>>>
>>> - Apply patches
>>>
>>>   src/pci.c
>>>
>>>      #ifndef MODPROBE
>>>      #define MODPROBE 0
>>>      #endif

  Actually one really expect a string, so I just defined it to
"modprobe" instead.

>>>   src/virsh.c:5665
>>>
>>>      if (command_ret != 0 /* WEXITSTATUS (0) */) {

  That's bizarre ...

WEXITSTATUS is defined in virsh.c:

#ifndef WEXITSTATUS
# define WEXITSTATUS(x) ((x) & 0xff)
#endif

it's used only once at the place you pointed out:

    if (command_ret != WEXITSTATUS (0)) {

I think it was used for cygwin portability, but in that
case I would have expected

    if (WEXITSTATUS(command_ret) != 0) {

Why did this break on OS-X ?

>> That's great - we can easily fix these 2 bugs.
>>
>>> - Compile
>>>
>>> The MACOSX_DEPLOYMENT_TARGET variable is very important, otherwise  
>>> you
>>> will get symbol errors when linking.

  What about detecting MACOSX_DEPLOYMENT_TARGET, because I assume it
will change from one environment to another, do this in configure.in and
export is in all Makefiles.am ? There must be a way to export the env
variable from the generated Makefiles surely...

Daniel

-- 
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel at veillard.com  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/




More information about the libvir-list mailing list