Hi Frank,
It seems it would be easier if you'd build kvm on a more recent linux kernel
(version 2.6.16 or later).
You could not make the kvm modules because 2.6.9 kernel does not use Kbuild,
but expects that information to be in the Makefile.
So... I typed "cd kernel; mv Makefile Makefile.orig; cat Kbuild Makefile.orig >
Makefile; make".
That started building the modules, but include file <linux/mutex.h> was not
found.
linux/mutex.h was introduced in version 2.6.16
If you insist on 2.6.9, try to replace the mutex with a semaphore (kvm_main.c
and kvm.h).
Uri.
-----Original Message-----
From: Francesc [mailto:[EMAIL PROTECTED]
Sent: Thu 18/01/2007 10:32
To: Uri Lublin
Cc: kvm-devel@lists.sourceforge.net
Subject: Re: [kvm-devel] compiler problem in Read Hat ES 4
Hi Uri,
I did it what you said but it's the same:
[EMAIL PROTECTED] kvm-11]# make clean ; ./configure --qemu-cc=gcc ; make
for i in kernel user qemu; do \
make -C $i clean; \
done
make[1]: Entering directory `/var/tmp/kvm-11/kernel'
make -C /lib/modules/2.6.9-42.0.3.ELsmp/build M=`pwd` clean
make[2]: Entering directory `/usr/src/kernels/2.6.9-42.0.3.EL-smp-i686'
CLEAN /var/tmp/kvm-11/kernel/.tmp_versions
make[2]: Leaving directory `/usr/src/kernels/2.6.9-42.0.3.EL-smp-i686'
make[1]: Leaving directory `/var/tmp/kvm-11/kernel'
make[1]: Entering directory `/var/tmp/kvm-11/user'
rm -f kvmctl *.o *.a .*.d
rm -f test/bootstrap test/*.o test/*.flat test/.*.d
make[1]: Leaving directory `/var/tmp/kvm-11/user'
make[1]: Entering directory `/var/tmp/kvm-11/qemu'
rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h
opc-arm.h gen-op-arm.h
rm -f *.o *.a qemu-img dyngen TAGS *.pod *~ */*~
make -C tests clean
make[2]: Entering directory `/var/tmp/kvm-11/qemu/tests'
rm -f *~ *.o test-i386.out test-i386.ref \
test-x86_64.log test-x86_64.ref qruncom linux-test testthread
sha1-i386 test-i386 runcom sha1
make[2]: Leaving directory `/var/tmp/kvm-11/qemu/tests'
for d in i386-softmmu; do \
make -C $d clean || exit 1 ; \
done
make[2]: Entering directory `/var/tmp/kvm-11/qemu/i386-softmmu'
rm -f *.o *.a *~ qemu gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o
make[2]: Leaving directory `/var/tmp/kvm-11/qemu/i386-softmmu'
make[1]: Leaving directory `/var/tmp/kvm-11/qemu'
rm -f config.make user/config.mak
which: no texi2html in
(/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin)
Install prefix /usr/local
BIOS directory /usr/local/share/qemu
binary directory /usr/local/bin
Manual directory /usr/local/share/man
ELF interp prefix /usr/gnemul/qemu-%M
Source path /var/tmp/kvm-11/qemu
C compiler gcc
Host C compiler gcc
make make
install install
host CPU i386
host big endian no
target list i386-softmmu
gprof enabled no
profiler no
static build no
SDL support yes
SDL static link yes
mingw32 support no
Adlib support no
CoreAudio support no
ALSA support yes
DSound support no
FMOD support no
kqemu support no
kvm support yes
Documentation no
make -C kernel
make[1]: Entering directory `/var/tmp/kvm-11/kernel'
make -C /lib/modules/2.6.9-42.0.3.ELsmp/build M=`pwd` "$@"
make[2]: Entering directory `/usr/src/kernels/2.6.9-42.0.3.EL-smp-i686'
Building modules, stage 2.
MODPOST
make[2]: Leaving directory `/usr/src/kernels/2.6.9-42.0.3.EL-smp-i686'
make[1]: Leaving directory `/var/tmp/kvm-11/kernel'
make -C user
make[1]: Entering directory `/var/tmp/kvm-11/user'
cc -I /var/tmp/kvm-11/kernel/include -MMD -MF ./.kvmctl.d -g -c -o
kvmctl.o kvmctl.c
cc -I /var/tmp/kvm-11/kernel/include -MMD -MF ./.main.d -g -c -o
main.o main.c
cc kvmctl.o main.o -o kvmctl
ar rcs libkvm.a kvmctl.o
make[1]: Leaving directory `/var/tmp/kvm-11/user'
make -C qemu
make[1]: Entering directory `/var/tmp/kvm-11/qemu'
gcc -DQEMU_TOOL -I /var/tmp/kvm-11/qemu/../user -Wall -O2 -g
-fno-strict-aliasing -I. -g -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -o qemu-img qemu-img.c block.c block-cow.c
block-qcow.c aes.c block-vmdk.c block-cloop.c block-dmg.c block-bochs.c
block-vpc.c block-vvfat.c -lz -luuid
................
................
gcc -I /var/tmp/kvm-11/qemu/../user -Wall -O2 -g -fno-strict-aliasing
-fomit-frame-pointer -I. -I.. -I/var/tmp/kvm-11/qemu/target-i386
-I/var/tmp/kvm-11/qemu -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -I/var/tmp/kvm-11/qemu/fpu -I
/var/tmp/kvm-11/kernel/include -DHAS_AUDIO -I/var/tmp/kvm-11/qemu/slirp
-c -o disas.o /var/tmp/kvm-11/qemu/disas.c
gcc -I /var/tmp/kvm-11/qemu/../user -Wall -O2 -g -fno-strict-aliasing
-fomit-frame-pointer -I. -I.. -I/var/tmp/kvm-11/qemu/target-i386
-I/var/tmp/kvm-11/qemu -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -I/var/tmp/kvm-11/qemu/fpu -I
/var/tmp/kvm-11/kernel/include -DHAS_AUDIO -I/var/tmp/kvm-11/qemu/slirp
-c -o i386-dis.o /var/tmp/kvm-11/qemu/i386-dis.c
rm -f libqemu.a
ar rcs libqemu.a exec.o kqemu.o qemu-kvm.o translate-op.o
translate-all.o cpu-exec.o translate.o op.o fpu/softfloat-native.o
helper.o helper2.o translate-copy.o disas.o i386-dis.o
gcc -L /var/tmp/kvm-11/qemu/../user -o qemu vl.o osdep.o block.o
readline.o monitor.o pci.o console.o loader.o block-cow.o block-qcow.o
aes.o block-vmdk.o block-cloop.o block-dmg.o block-bochs.o block-vpc.o
block-vvfat.o migration.o scsi-disk.o cdrom.o lsi53c895a.o usb.o
usb-hub.o usb-linux.o usb-hid.o usb-ohci.o usb-msd.o ne2000.o rtl8139.o
pcnet.o hypercall.o ide.o pckbd.o ps2.o vga.o sb16.o es1370.o dma.o
audio.o noaudio.o wavaudio.o sdlaudio.o ossaudio.o alsaaudio.o
wavcapture.o fdc.o mc146818rtc.o serial.o i8259.o i8254.o pcspk.o pc.o
cirrus_vga.o mixeng.o apic.o parallel.o acpi.o piix_pci.o usb-uhci.o
gdbstub.o sdl.o vnc.o slirp/cksum.o slirp/if.o slirp/ip_icmp.o
slirp/ip_input.o slirp/ip_output.o slirp/slirp.o slirp/mbuf.o
slirp/misc.o slirp/sbuf.o slirp/socket.o slirp/tcp_input.o
slirp/tcp_output.o slirp/tcp_subr.o slirp/tcp_timer.o slirp/udp.o
slirp/bootp.o slirp/debug.o slirp/tftp.o libqemu.a -lm -lz -lasound
-lkvm -L/usr/lib -lSDL -lpthread -lutil -lrt -luuid
make[2]: Leaving directory `/var/tmp/kvm-11/qemu/i386-softmmu'
make[1]: Leaving directory `/var/tmp/kvm-11/qemu'
[EMAIL PROTECTED] kvm-11]# make install
make -C kernel DESTDIR="" install
make[1]: Entering directory `/var/tmp/kvm-11/kernel'
mkdir -p //lib/modules/2.6.9-42.0.3.ELsmp/extra
cp *.ko //lib/modules/2.6.9-42.0.3.ELsmp/extra
cp: cannot stat `*.ko': No such file or directory
make[1]: *** [install] Error 1
make[1]: Leaving directory `/var/tmp/kvm-11/kernel'
make: *** [install] Error 2
Notice that in the "make -C kernel" does not do enything.
Frank
Uri Lublin wrote:
>
> Hi Frank,
>
> The modules were probably already made.
> Try to remake (from <kvm-dir>): "make clean ; ./configure
> --qemu-cc=gcc ; make"
>
> Uri.
>
> -----Original Message-----
> From: Francesc [mailto:[EMAIL PROTECTED]
> Sent: Wed 17/01/2007 14:31
> To: Uri Lublin
> Cc: kvm-devel@lists.sourceforge.net
> Subject: Re: [kvm-devel] compiler problem in Read Hat ES 4
>
> Hi Uri,
> it has compiled OK with gcc, but it has not produced any module ( .ko)
> It seems like does not do anything when the "make" should do this part:
>
> <snipped and reordered>
>
> what can be the problem?
>
> Thanks for your help.
>
> Frank
>
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel