kvm-16 fails to compile on Kubuntu Edgy
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
martin@Solo:~/Download/kvm-16$ ./configure --prefix=/opt/kvm Install prefix /opt/kvm BIOS directory /opt/kvm/share/qemu binary directory /opt/kvm/bin Manual directory /opt/kvm/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /home/martin/Download/kvm-16/qemu C compiler /usr/bin/gcc-3.4 Host C compiler gcc make make install install host CPU x86_64 host big endian no target list x86_64-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
martin@Solo:~/Download/kvm-16$ make make -C kernel make[1]: Entering directory `/home/martin/Download/kvm-16/kernel' make -C /lib/modules/2.6.17-11-generic/build M=`pwd` "$@" make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic' CC [M] /home/martin/Download/kvm-16/kernel/kvm_main.o /home/martin/Download/kvm-16/kernel/kvm_main.c: In function ‘kvmfs_get_sb’: /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: error: too many arguments to function ‘get_sb_pseudo’ /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: warning: return makes integer from pointer without a cast /home/martin/Download/kvm-16/kernel/kvm_main.c: At top level: /home/martin/Download/kvm-16/kernel/kvm_main.c:2445: warning: initialization from incompatible pointer type make[3]: *** [/home/martin/Download/kvm-16/kernel/kvm_main.o] Error 1 make[2]: *** [_module_/home/martin/Download/kvm-16/kernel] Error 2 make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-11-generic' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/martin/Download/kvm-16/kernel' make: *** [kernel] Error 2
Has anyone seen this error before? And does anyone know how to get it working?
Thanks for your help!
Martin
-------------------------------------------------------------------------
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
A message that is not in the archive (sent off-list or not yet received): 45FC8616.20108-/[email protected]
Quoted 5 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
[snip]
Quoted 1 line
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic'
That's a very old version of the kernel, compared to the age of kvm. I think 2.6.19 is a good minimum version for building the kvm modules.
Can you try again after updating your kernel sources?
-------------------------------------------------------------------------
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
A message that is not in the archive (sent off-list or not yet received): 2e59e6970703171934q5438a8d1r7e1df582e37e6794-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org
Quoted 6 lines · [email protected] wrote:
Quoted 5 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
Quoted 6 lines
[snip]
Quoted 1 line
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic'
That's a very old version of the kernel, compared to the age of kvm. I think 2.6.19 is a good minimum version for building the kvm modules. Can you try again after updating your kernel sources?
I tried that but it didn't work. However, in the meantime I installed a new kernel and got kvm to work (see other post).
Cheers,
Martin
-------------------------------------------------------------------------
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
Quoted 6 lines · [email protected] wrote:
Quoted 5 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
Quoted 6 lines
[snip]
Quoted 1 line
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic'
That's a very old version of the kernel, compared to the age of kvm. I think 2.6.19 is a good minimum version for building the kvm modules. Can you try again after updating your kernel sources?
Sorry! I just answered the wrong post. OK, I updated my kernel to 2.6.20.3 and managed to compile kvm. Btw I used kvm-12 as indicated here:
http://kvm.qumranet.com/kvmwiki/Downloads
Is this the latest version to work with a 2.6.20 kernel?
Thanks for your help.
Cheers,
Martin
-------------------------------------------------------------------------
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
A message that is not in the archive (sent off-list or not yet received): 45FD8509.1080700-/[email protected]
Quoted 14 lines · Martin Kaufmann
Quoted 6 lines · [email protected] wrote:
Quoted 5 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
Quoted 6 lines
[snip]
Quoted 1 line
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic'
That's a very old version of the kernel, compared to the age of kvm. I think 2.6.19 is a good minimum version for building the kvm modules. Can you try again after updating your kernel sources?
Quoted 6 lines
Sorry! I just answered the wrong post. OK, I updated my kernel to 2.6.20.3 and managed to compile kvm. Btw I used kvm-12 as indicated here:
http://kvm.qumranet.com/kvmwiki/Downloads
Is this the latest version to work with a 2.6.20 kernel?
No, that's the version included in 2.6.20. The updated kernel module kvm-16 builds perfectly with a 2.6.20 kernel.
configure should compile the module as long as you don't specify --with-patched-kernel.
Quoted 7 lines
Thanks for your help.
Cheers,
Martin
-------------------------------------------------------------------------
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
A message that is not in the archive (sent off-list or not yet received): 2e59e6970703181244x6a19c671k28a9958b3a073922-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org
Quoted 2 lines
configure should compile the module as long as you don't specify --with-patched-kernel.
Ok, that's a misstatement. configure wouldn't compile the module, just set the makefiles to do so.
-------------------------------------------------------------------------
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
Quoted 27 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
martin@Solo:~/Download/kvm-16$ make make -C kernel make[1]: Entering directory `/home/martin/Download/kvm-16/kernel' make -C /lib/modules/2.6.17-11-generic/build M=`pwd` "$@" make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic' CC [M] /home/martin/Download/kvm-16/kernel/kvm_main.o /home/martin/Download/kvm-16/kernel/kvm_main.c: In function ‘kvmfs_get_sb’: /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: error: too many arguments to function ‘get_sb_pseudo’ /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: warning: return makes integer from pointer without a cast /home/martin/Download/kvm-16/kernel/kvm_main.c: At top level: /home/martin/Download/kvm-16/kernel/kvm_main.c:2445: warning: initialization from incompatible pointer type make[3]: *** [/home/martin/Download/kvm-16/kernel/kvm_main.o] Error 1 make[2]: *** [_module_/home/martin/Download/kvm-16/kernel] Error 2 make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-11-generic' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/martin/Download/kvm-16/kernel' make: *** [kernel] Error 2
Quoted 5 lines
Has anyone seen this error before? And does anyone know how to get it working?
Thanks for your help!
A couple of lines above the first error reported there is a LINUX_VERSION_CODE check. There is a similar one surrounding kvmfs_get_sb() in external-module-compat.h. Can you change both from 16 to 17 and report?
Signature · 8 lines
error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- 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
A message that is not in the archive (sent off-list or not yet received): 45FD2B19.5040100-atKUWr5tajBWk0Htik3J/[email protected]
Quoted 32 lines · Avi Kivity
Quoted 31 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
martin@Solo:~/Download/kvm-16$ make make -C kernel make[1]: Entering directory `/home/martin/Download/kvm-16/kernel' make -C /lib/modules/2.6.17-11-generic/build M=`pwd` "$@" make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic' CC [M] /home/martin/Download/kvm-16/kernel/kvm_main.o /home/martin/Download/kvm-16/kernel/kvm_main.c: In function ‘kvmfs_get_sb’: /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: error: too many arguments to function ‘get_sb_pseudo’ /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: warning: return makes integer from pointer without a cast /home/martin/Download/kvm-16/kernel/kvm_main.c: At top level: /home/martin/Download/kvm-16/kernel/kvm_main.c:2445: warning: initialization from incompatible pointer type make[3]: *** [/home/martin/Download/kvm-16/kernel/kvm_main.o] Error 1 make[2]: *** [_module_/home/martin/Download/kvm-16/kernel] Error 2 make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-11-generic' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/martin/Download/kvm-16/kernel' make: *** [kernel] Error 2Has anyone seen this error before? And does anyone know how to get it working?
Quoted 7 lines
Quoted 2 lines
Thanks for your help!
A couple of lines above the first error reported there is a
LINUX_VERSION_CODEcheck. There is a similar one surroundingkvmfs_get_sb()inexternal-module-compat.h. Can you change both from 16 to 17 and report?
I tried that but it didn't work. However, in the meantime I installed a new kernel and got kvm to work (see other post).
Thanks for your help.
Cheers,
Martin
-------------------------------------------------------------------------
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
Quoted 32 lines · Avi Kivity
Quoted 30 lines · Martin Kaufmann
Hi!
I tried to compile kvm-16 on Kubuntu Edgy - so far unsuccessfully. The configure succeeds but the make process fails with the following output:
martin@Solo:~/Download/kvm-16$ make make -C kernel make[1]: Entering directory `/home/martin/Download/kvm-16/kernel' make -C /lib/modules/2.6.17-11-generic/build M=`pwd` "$@" make[2]: Entering directory `/usr/src/linux-headers-2.6.17-11-generic' CC [M] /home/martin/Download/kvm-16/kernel/kvm_main.o /home/martin/Download/kvm-16/kernel/kvm_main.c: In function ‘kvmfs_get_sb’: /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: error: too many arguments to function ‘get_sb_pseudo’ /home/martin/Download/kvm-16/kernel/kvm_main.c:2438: warning: return makes integer from pointer without a cast /home/martin/Download/kvm-16/kernel/kvm_main.c: At top level: /home/martin/Download/kvm-16/kernel/kvm_main.c:2445: warning: initialization from incompatible pointer type make[3]: *** [/home/martin/Download/kvm-16/kernel/kvm_main.o] Error 1 make[2]: *** [_module_/home/martin/Download/kvm-16/kernel] Error 2 make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-11-generic' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/martin/Download/kvm-16/kernel' make: *** [kernel] Error 2Has anyone seen this error before? And does anyone know how to get it working?
Quoted 9 lines
Quoted 3 lines
Thanks for your help!
A couple of lines above the first error reported there is a
LINUX_VERSION_CODEcheck. There is a similar one surroundingkvmfs_get_sb()inexternal-module-compat.h. Can you change both from 16 to 17 and report?
The definition of struct file_system_type.get_sb for 2.6.17 is:
struct super_block *(*get_sb) (struct file_system_type *, int,
const char *, void *);
So a slightly modified kvmfs_get_sb() is needed. I'm not sure how to cope with this though since this #if guard isn't in external-module-compat.h. I was under the impression that per-kernel version defined were frowned upon in mainline code.
What's the correct solution to this?
Regards,
Anthony Liguori
-------------------------------------------------------------------------
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
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 4 lines · Anthony Liguori
The definition of struct file_system_type.get_sb for 2.6.17 is:
struct
super_block*(*get_sb) (structfile_system_type*, int,
Quoted 9 lines
const char *, void *);So a slightly modified
kvmfs_get_sb()is needed. I'm not sure how to cope with this though since this #if guard isn't inexternal-module-compat.h. I was under the impression that per-kernel version defined were frowned upon in mainline code.What's the correct solution to this?
See the 'sync' target in kernel/Makefile. It looks like all that is necessary is to add the 2.6.17 case to external-module-compat.h.
Signature · 8 lines
Do not meddle in the internals of kernels, for they are subtle and quick to panic. ------------------------------------------------------------------------- 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