Virtualisierung

ID #1304 VMware-Server bringt Compiler-Fehler bei dem vsock-Modul auf Ubuntu 8.04 (hardy)

Problem:

Folgende Fehlermeldung kommt, wenn man auf Ubuntu 8.04 (hardy) vmware-install.pl ausführt:

Extracting the sources of the vsock module.
Building the vsock module.
Using 2.6.x kernel build system.
make: Entering directory `/root/tmp/vmware-config0/vsock-only'
make -C /lib/modules/2.6.24.4-desktop-1mnb/build/include/.. SUBDIRS=$PWD
SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.24.4-desktop-1mnb'
CC [M] /root/tmp/vmware-config0/vsock-only/linux/af_vsock.o
In file included from /root/tmp/vmware-config0/vsock-only/linux/af_vsock.c:92:
/root/tmp/vmware-config0/vsock-only/./include/compat_wait.h:64: error:
conflicting types for ‘poll_initwait’ include/linux/poll.h:65: error: previous declaration of ‘poll_initwait’ was here /root/tmp/vmware-config0/vsock-only/linux/af_vsock.c:260: warning: initialization from incompatible pointer type
/root/tmp/vmware-config0/vsock-only/linux/af_vsock.c: In function ‘__VSockVmciCreate’:
/root/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing argument 1 of ‘sk_alloc’ makes pointer from integer without a cast
/root/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing argument 3 of ‘sk_alloc’ makes integer from pointer without a cast
/root/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing argument 4 of ‘sk_alloc’ makes pointer from integer without a cast
make[2]: *** [/root/tmp/vmware-config0/vsock-only/linux/af_vsock.o]
Error 1
make[1]: *** --_module_/root/tmp/vmware-config0/vsock-only-- Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.24.4-desktop-1mnb'
make: *** http://vsock.ko Error 2
make: Leaving directory `/root/tmp/vmware-config0/vsock-only'
Unable to build the vsock module.

The VM communication interface socket family is used in conjunction with the VM
communication interface to provide a new communication path among guests and
host. The rest of this software provided by VMware Server is designed to work
independently of this feature. If you wish to have the VSOCK feature you can
install the driver by running vmware-config.pl again after making sure that
gcc, binutils, make and the kernel sources for your running kernel are
installed on your machine. These packages are available on your distribution's
installation CD.
Press the Enter key to continue.

Lösung:

Als erstes drückt man Enter und führt den Rest der Installation bis zum Ende aus.

Es liegt an dem Ubuntu-Kernel, welcher ein paar mehr Informationen enthält.
Um das Problem zu umgehen kann man einfach die Tests in der autoconf ausschalten. Hier die Kurzanleitung:

#Sicherheitskopie anlegen:
cp -p /usr/lib/vmware/modules/source/vsock.tar /usr/lib/vmware/modules/source/vsock.tar.bak
#auspacken
cd /usr/local/src/
tar xf /usr/lib/vmware/modules/source/vsock.tar 
#Aenderungen
cd vsock-only/
sed -i 's/^\#include //' autoconf/*.c 
cd ..
#einpacken
tar cf /usr/lib/vmware/modules/source/vsock.tar vsock-only/*

Nun noch einmal vmware-update.pl starten und immer schön mit der Enter-Taste bestätigen.

Links:

 

sozial Bookmarking
Bookmarken bei YIGG Bookmarken bei Mister-Wong Bookmarken bei Icio Bookmarken bei del.icio.us Bookmarken bei Technorati Bookmarken bei Furl Bookmarken bei Spurl Bookmarken bei Yahoo Bookmarken bei Google

huschi, zuletzt 2008-07-29 15:07     Artikel ausdrucken Artikel weiterempfehlen Als PDF-Datei anzeigen

Dieser Inhalt ist unter der Creative-Commons Lizenz lizensiert.

Probleme bitte im Server-Support-Forum diskutieren.

Rubriken zu diesem Artikel
überflüssig 1 2 3 4 5 wertvoll  
Durchschnittliche Bewertung:   0 von 5 (0 Bewertungen)

Artikel kommentieren

Kommentar von Fransen (2008-05-26 16:43:26):
Wow, da hab ich mich fast tot gesucht nach diesen Fehler.

Kommentar von Mark (2008-06-19 20:25:16):
Tja, bei mir klappt es leider nicht. Habe kein Ubuntu, aber auch Kernel 2.6.24-4 (direkt von kernel.org) auf x86_64 Architektur.

Auch nach dem vorgeschlagenen Patch kommt:

Building the vsock module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config0/vsock-only'
make -C /lib/modules/2.6.24.4/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.24.4'
CC [M] /tmp/vmware-config0/vsock-only/linux/af_vsock.o
In file included from /tmp/vmware-config0/vsock-only/linux/af_vsock.c:92:
/tmp/vmware-config0/vsock-only/./include/compat_wait.h:64: error: conflicting types for 'poll_initwait'
include/linux/poll.h:65: error: previous declaration of 'poll_initwait' was here
/tmp/vmware-config0/vsock-only/./include/compat_wait.h:64: error: conflicting types for 'poll_initwait'
include/linux/poll.h:65: error: previous declaration of 'poll_initwait' was here
/tmp/vmware-config0/vsock-only/linux/af_vsock.c:260: warning: initialization from incompatible pointer type
/tmp/vmware-config0/vsock-only/linux/af_vsock.c: In function `__VSockVmciCreate':
/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing arg 1 of `sk_alloc' makes pointer from integer without a cast
/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing arg 3 of `sk_alloc' makes integer from pointer without a cast
/tmp/vmware-config0/vsock-only/linux/af_vsock.c:1789: warning: passing arg 4 of `sk_alloc' makes pointer from integer without a cast
make[2]: *** [/tmp/vmware-config0/vsock-only/linux/af_vsock.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vsock-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.24.4'
make: *** [vsock.ko] Error 2
make: Leaving directory `/tmp/vmware-config0/vsock-only'
Unable to build the vsock module.

Kommentar von Hermann (2008-06-25 11:14:14):
Klappt bei mir leider auch nicht. Habe aktuellen Kernel installiert, gleiche Fehlermeldung.

Kommentar von huschi (2008-06-25 12:40:06):
@mark und Hermann:
Wenn Ihr Kernel von Kernel.org nimmt, paßt dieser Patch auch nicht.
Dies Tipp ist ausdrücklich für den (momentan) aktuellen Hardy-Ubuntu-Kernel.

huschi.

Kommentar von Hermann (2008-07-01 14:10:53):
Der momentan (2008-07-01) aktuelle Hardy Kernel ist: 2.6.24-19-server.
Damit klappt es definitiv nicht.