
On Mon, Jul 21, 2008 at 10:31:47AM +0300, Kenneth Nagin wrote:
I downloaded the latest libvirt and tried to make it but received this error message:
make: *** No rule to make target `gnulib/m4/onceonly_2_57.m4', needed
by
`Makefile.in'. Stop.
The problem was related to running ./autogen.sh --prefix=$HOME/usr. I didn't notice that it did not run correctly. It requires the install gettext-devel which does not come automatically with fedora.
But now the make fails due to an i386 / i386:x86-64 incompatibility. These are the error messages:
/usr/bin/ld: i386 architecture of input file `.libs/libvirt_la-openvz_conf.o' is incompatible with i386:x86-64 output /usr/bin/ld: i386 architecture of input file `.libs/libvirt_la-openvz_driver.o' is incompatible with i386:x86-64 output collect2: ld returned 1 exit status
My guess is that you are sharing the same subtree between 32 and 64 bits machines and there are remains of the build for x86-64 when attempting
Daniel Veillard <veillard@redhat.com> wrote on 21/07/2008 11:58:01: the
build on 32 bits. Run make clean (or distclean) and restart from scratch,
Daniel Kenneth Nagin <nagin@il.ibm.com> wrote on 21/07/2008
That was the problem. I download the source again to a new director and the incompatibility problem disappeared. However the it failed with a compilation error. There was a missing ';' at the end of the xenUnifiedOpen() function. This is the error message: xen_unified.c: In function 'xenUnifiedOpen': xen_unified.c:348: error: expected ';' before '}' token xen_unified.c:342: warning: label 'clean' defined but not used make[2]: *** [libvirt_la-xen_unified.lo] Error 1 I added the ';' and now it compiles.. This is the diff between the fixed code and the original code: [nagin@arenal src]$ diff xen_unified.c xen_unified.c.org 347c347 < return ret;] ---
return ret;]
This the fixed xen_unified.c (See attached file: xen_unified.c) Thanks for the help. Kenneth