Pues en estos días toda la blogsfera hablan del lanzamiento de Ubuntu Hardy Heron de bajarlo, de servidores saturados, mientras tanto algun otro como yo que lo esta utilizando desde las versiones Beta y solo fuimos actualizando los cambios hasta llegar a la version estable final.
Pues bien por trabajo no me habia puesto a instalar VMware pues bien hoy que lo intento y da errores Unable to build the vmmon module despues de una simple busqueda en san google.
Los pasos que hice fueron basicamente los mismos que para instalar VMware Server 1.0.4 en Gutsy Gibbon que una vez descargado VMware Server y vmware-any-to-any-update hay que instalar unos paquetes y antes de empezar con la instalacion hay que hacer algunos cambios.
Para los modulos de VMware necesitamos instalar build-essential y linux-headers-nuestrokernel, para los servicios de VMware requerimos de xinetd
sudo apt-get install build-essential linux-headers-`uname -r` xinetd
descomprimimos
tar zxf VMware-server-1.0.4-56528.tar.gz
tar zxf vmware-any-any-update115.tar.gz
Si bien lo siguiente es copiar el contenido de any-to-any-update a vmware primero hay que hacerle unos cambios pues si no nos daria un error
make: Entering directory `/tmp/vmware-config2/vmmon-only'
make -C /lib/modules/2.6.24-12-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.24-12-generic'
CC [M] /tmp/vmware-config2/vmmon-only/linux/driver.o
CC [M] /tmp/vmware-config2/vmmon-only/linux/hostif.o
CC [M] /tmp/vmware-config2/vmmon-only/common/comport.o
CC [M] /tmp/vmware-config2/vmmon-only/common/cpuid.o
In file included from include/asm/bitops.h:2,
from /tmp/vmware-config2/vmmon-only/./include/vcpuset.h:74,
from /tmp/vmware-config2/vmmon-only/./include/modulecall.h:23,
from /tmp/vmware-config2/vmmon-only/common/vmx86.h:18,
from /tmp/vmware-config2/vmmon-only/common/hostif.h:18,
from /tmp/vmware-config2/vmmon-only/common/cpuid.c:14:
include/asm/bitops_32.h:9:2: error: #error only
can be included directly
make[2]: *** [/tmp/vmware-config2/vmmon-only/common/cpuid.o] Error 1
make[1]: *** _module_/tmp/vmware-config2/vmmon-only Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-12-generic’
make: *** http://vmmon.ko Error 2
make: Leaving directory `/tmp/vmware-config2/vmmon-only’
Unable to build the vmmon module.
Pues bien nos vamos a la carpeta vmware-any-to-any-update115 descomprimimos vmmon.tar editamos el archivo vmmon-only/include/vcpuset.h para ser mas exactos la linea 74.
tar xf vmmon.tar
nano ++74 vmmon-only/include/vcpuset.h
En el archivo hay que cambiar esto “asm/bitops.h” a “linux/bitops” guardamos los cambios borramos el viejo vmmon.tar y volvemos a comprimir el tar.
rm vmmon.tar
tar cvf vmmon.tar vmmon-only
Ahora si copiamos todo el contenido vmware-any-to-any-update115 a vmware-server-distrib/lib/modules/source/ y empezamos con la instalación
cp vmware-any-any-update115/* vmware-server-distrib/lib/modules/source/
cd vmware-server-distrib
sudo ./vmware-install.pl
Si todo lo hicimos bien pues no deberia darnos ningun error. Esto funciona si hemos hecho una instalacion limpia de VMware pero si hicistes un upgrade de Gutsy a Hardy y quieres recompilar los modulos basicamente es lo mismo pero el vmmon.tar se encuentra en otra carpeta asi que te recomiendo leer el blog de Carlos Cordero y su post VMware y Ubuntu 8.04 (Beta) que es la lectura donde me base para solucionar esto.