Si usas VMware estarás acostumbrado a tener que reconfigurar sus módulos para el núcleo de linux cada vez que actualizas de núcleo. El cambio a la rama 2.6.24 en Ubuntu 8.04 Hardy Heron hace que VMware directamente no sea capaz de recompilar sus módulos. No obstante, existe solución.
Entrando en detalle, si intentamos un
sudo vmware-config.pl
Vamos a ver a la hora de compilar los módulos del núcleo algo como:
None of the pre-built vmmon modules for VMware Server is suitable for your running kernel. Do you want this program to try to build the vmmon module for your system (you need to have a C compiler installed on your system)? [yes] Using compiler "/usr/bin/gcc". Use environment variable CC to override. What is the location of the directory of C header files that match your running kernel? [/lib/modules/2.6.24-16-generic/build/include] Extracting the sources of the vmmon module. Building the vmmon module. Using 2.6.x kernel build system. make: se ingresa al directorio `/tmp/vmware-config0/vmmon-only' make -C /lib/modules/2.6.24-16-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.24-16-generic' CC [M] /tmp/vmware-config0/vmmon-only/linux/driver.o In file included from /tmp/vmware-config0/vmmon-only/./include/vmware.h:25, from /tmp/vmware-config0/vmmon-only/linux/driver.c:48: /tmp/vmware-config0/vmmon-only/./include/vm_basic_types.h:159: error: redefinición de la definición de tipo ‘uintptr_t’ include/linux/types.h:40: error: la declaración previa de ‘uintptr_t’ estaba aquí En el fichero incluído de /tmp/vmware-config0/vmmon-only/linux/driver.h:20, de /tmp/vmware-config0/vmmon-only/linux/driver.c:49: /tmp/vmware-config0/vmmon-only/./include/compat_wait.h:37:5: aviso: "VMW_HAVE_EPOLL" no está definido /tmp/vmware-config0/vmmon-only/./include/compat_wait.h:43:5: aviso: "VMW_HAVE_EPOLL" no está definido In file included from /tmp/vmware-config0/vmmon-only/linux/driver.h:20, from /tmp/vmware-config0/vmmon-only/linux/driver.c:49: /tmp/vmware-config0/vmmon-only/./include/compat_wait.h:60: error: tipos en conflicto para ‘poll_initwait’ include/linux/poll.h:65: error: la declaración previa de ‘poll_initwait’ estaba aquí /tmp/vmware-config0/vmmon-only/linux/driver.c:147: aviso: inicialización desde un tipo de puntero incompatible /tmp/vmware-config0/vmmon-only/linux/driver.c:151: aviso: inicialización desde un tipo de puntero incompatible /tmp/vmware-config0/vmmon-only/linux/driver.c: En la función ‘LinuxDriver_Ioctl’: /tmp/vmware-config0/vmmon-only/linux/driver.c:1659: error: ‘struct mm_struct’ no tiene un miembro llamado ‘dumpable’ make[2]: *** [/tmp/vmware-config0/vmmon-only/linux/driver.o] Error 1 make[1]: *** [_module_/tmp/vmware-config0/vmmon-only] Error 2 make[1]: se sale del directorio `/usr/src/linux-headers-2.6.24-16-generic' make: *** [vmmon.ko] Error 2 make: se sale del directorio `/tmp/vmware-config0/vmmon-only' Unable to build the vmmon module. For more information on how to troubleshoot module-related problems, please visit our Web site at "http://www.vmware.com/download/modules/modules.html" and "http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html". Execution aborted.
Para resolver el problema lo que hay que usar es la utilidad vmware-any-any-update.
cd /tmp wget http://uruz.org/files/vmware-any-any-update-116.tgz tar -xvzf vmware-any-any-update116.tgz cd vmware-any-any-update116 sudo ./runme.pl
Una vez compilados todos los módulos y reiniciado el servidor de VMWare la cosa no ha terminado del todo. Si se ejecuta la consola del servidor mediante el comando vmware recibiremos por consola cosas como las siguientes:
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2) /usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6) /usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2) /usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6) /usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2) /usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6)
Y la ejecución se parará. Es lo que tiene los binarios compilados a fuego. Lo mejor que se puede hacer es enlazar simbólicamente las libgcc del equipo en el directorio donde vmware espera encontrarlas (/usr/lib/vmware/lib/):
sudo ln -sf /lib/libgcc_s.so.1 /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1 sudo ln -sf /usr/lib/libpng12.so.0 /usr/lib/vmware/lib/libpng12.so.0/libpng12.so.0
Una vez hechos estos enlaces simbólicos debería funcionar la consola del servidor VMware y podemos acceder a las máquinas virtuales que tengamos en el sistema.
En los núcleos de 64 bits con el paquete ia32-libs desactualizado puede además haber más problemas con las bibliotecas gráficas del gtk para 32 bits. Para resolver el problema falta hacer unos cuantos enlaces simbólicos a las bibliotecas de 32 bits que vmware echa en falta o bien actualizar el paquete a la 2.2ubuntu10, que es lo más recomendable. En launchpad informan de que ya no hace falta hacer lo siguiente:
sudo ln -s /usr/lib32 /usr/l32 sudo sed -i -e 's/usr/lib/usr/l32/g' /usr/lib32/gtk-2.0/2.10.0/loader-files.d/libgtk2.0-0.loaders sudo sed -i -e 's/usr/lib/usr/l32/g' /usr/lib32/libgdk_pixbuf-2.0.so.0.1200.9
Y efectivamente en el equipo recién actualizado a a 8.04 sin pasar por las versiones de prueba ni candidatas este último paso no hay que hacerlo.
Obtenido directamente desde los foros de Ubuntu.
Muchas gracias, me ha ido muy bien, y bien explicado
perfecto!!!!
recien actualizado a hardy heron 64 y solo me faltaba vmware para tener mi equipo al 200%
Gracias, era lo unico que me faltaba despues de arreglar el dosemu y el sonido del flash.
INSTALAR VMWARE 6.5 EN UBUNTU 8.04
1. Solo tienen que descargar la VMware 6.5 de la pagina oficial, http://www.vmware.com o de http://communities.vmware.com/community/beta/workstation6.5, hay esta la clave y todo para crear la maquina, recuerden vmplayer es gratis.
2. Descomprime el comprimido en tu directorio de usuario, por consola entras en el directorio donde descomprimiste el vmware y ejecutamos sudo ./vmware-install.pl
queda allgo asi: usuario@usuario-x:~/vmware-distrib$ sudo ./vmware-install.pl
3 presiona enter a todo lo ke pregunte y lo encontraras instalado en: Aplicaciones –> herramientas del sistema
espero que les sirva de algo, a se me olvido decir que esta version a pesar de ser una beta tiene mejoras exelentes como la con nueva configuracion de redes, trabaja un poco mas ligero (a mi parecer) ciao
att: Louis
Louis, lo que comentas es para VMWare Workstation, no para VMWare Server, aunque en esencia son lo mismo, VMware Workstation es de pago, mientras que la Server es gratuita. De hecho, creo que el parche de actualización vmware-any-any-update viene de alguna VMWare Workstation.
Un saludo.
Yo uso la 32bits, y cuando ejecuto runme.pl me da el mismos error.
…
What is the location of the directory of C header files that match your running
kernel? [/lib/modules/2.6.24-16-generic/build/include]
Extracting the sources of the vmmon module.
Building the vmmon module.
Unknown VMware Workstation 6.0.3 build 80004 detected. Building for Workstation 6.0.0.
Using 2.6.x kernel build system.
make: se ingresa al directorio `/tmp/vmware-config8/vmmon-only’
make -C /lib/modules/2.6.24-16-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.24-16-generic’
CC [M] /tmp/vmware-config8/vmmon-only/linux/driver.o
CC [M] /tmp/vmware-config8/vmmon-only/linux/driverLog.o
CC [M] /tmp/vmware-config8/vmmon-only/linux/hostif.o
CC [M] /tmp/vmware-config8/vmmon-only/common/comport.o
CC [M] /tmp/vmware-config8/vmmon-only/common/cpuid.o
CC [M] /tmp/vmware-config8/vmmon-only/common/hash.o
CC [M] /tmp/vmware-config8/vmmon-only/common/memtrack.o
CC [M] /tmp/vmware-config8/vmmon-only/common/phystrack.o
CC [M] /tmp/vmware-config8/vmmon-only/common/task.o
gcc: error trying to exec ‘cc1plus’: execvp: No existe el fichero ó directorio
make[2]: *** [/tmp/vmware-config8/vmmon-only/common/task.o] Error 1
make[1]: *** [_module_/tmp/vmware-config8/vmmon-only] Error 2
make[1]: se sale del directorio `/usr/src/linux-headers-2.6.24-16-generic’
make: *** [vmmon.ko] Error 2
make: se sale del directorio `/tmp/vmware-config8/vmmon-only’
Unable to build the vmmon module.
For more information on how to troubleshoot module-related problems, please
visit our Web site at «http://www.vmware.com/download/modules/modules.html» and
«http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html».
Execution aborted.
Estoy desesperado en la 7.10 iba perfecto, llevo 3 días con esto y no doy con la solución. A ver si veis algo que a mi se me escape.
Muchas gracias.
Me salvaste la vida ¡gracias! tengo intalado vmware.
Es mi imaginación o quitaron vmware de Ubuntu 8.04 x)
Saludos muy buen post.
César, ¿qué producto de VMWare y versión estás usando exactamente? Por lo que veo te sale
Me parece que no usas VMWare Server, sino la Workstation. En cualquier caso, ¿estás usando la última versión del software? Por lo que comentan por arriba, con la Workstation 6.5 no parece haber problemas, claro, que es una beta. Yo de todos modos uso las VMWare Server 1.0.x, no las Workstations. En esencia deberían compilar igual y adolecer de casi los mismos problemas al distribuirse los binarios compilados con bibliotecas antiguas. Prueba con las últimas versiones, que tendrán los módulos para el núcleo preparados para las últimas ramas del núcleo de Linux y prueba también a usar el any-any update. De la 7.10 a la 8.04 hay cambio de núcleo de la 2.6.22.x a la 2.6.24.x
TheEfrit, ¿qué hacés promocionando un producto no-libre habiendo KVM en 8.04?
Debo decir que me encanta el VMWare: permite probar y despotricar contra Ubuntu sin tener que prescindir de mi fabuloso Windows
Emilio, me pasa lo mismo con mi Ubuntu virtualizando por la patilla Windows sin problemas…
TheEfrit
Gracias por tu respuesta ya te contare. Use la workstation al ver que con la server no había forma, y la beta 6.5 funciona aunque con algunos errores, pero la workstation no es la solucion (es de pago, solo 30 dias) ya te contare, ahora voy a probar si con las modificaciones echas por la 6.5 me funciona la server, ya estoy llegando a las soluciones chapuza, pero es lo que hay.
Muy buena solución, funciona perfecto.
¿Como has conseguido resolverlo?Lo has visto en algun sitio, utilizas mucho vmware….
Si no te importa voy a copiarte los pasos por si algun dia se pierde tu pagina tenerlos, claro esta manteniendo tu autoria.
David
David, todo tuyo, siempre que respetes la licencia, Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Spain
La solución vía Google buscando los errores de compilación. Por suerte hay mucha gente que tira de vmware sobre Ubuntu xD
Por fin.
Para que me funcionara tuve empezar instalando…
sudo apt-get install build-essential linux-headers-`uname -r`
sudo apt-get install xinetd
Y con eso todo me funciono bien luego.
Gracias otra vez.
Hola:
Me averguenza confesar que en mi caso la solucion era harto mas sencilla.
Ocurrio que mi VMWARE dejo de funcionar y sospechaba un problema con la reciente instalacion de unas librerias.
Lo que habia ocurrido era nada mas que en una actualizacion automatica de Fedora Core 8, el kernel cambio desde 2.6.24.7-92.fc8 a 2.6.25.4-10.fc8. A su vez eso -automaticamente tambien- actualizo el GRUB y ahora habia 2 posibilidades de iniciar el sistema. Acostumbrado como estaba a dejar iniciar el sistema, no habia notado que ahora el sistema partia con el nuevo kernel!
Y eso fue todo, poner atencion a la partida, elegir el «antiguo» kernel, «reparar» usando vmware-config.pl y listo, «on the road again». Linux sera muy simpatico pero a la par bastante enredado sobre todo cuando no eres experto sino simple usuario!
Ojala esto sirva, la moraleja es que
1. a veces la solucion es bastante mas simple que bajar e instalar un nuevo parche.
2. hay que poner atencion a las cosas que se actualizan e instalan «automagicamente». Tal vez crear un registro en Desktop con el nombre de lo que se instalo y la fecha, para no apelar a la memoria ni dejar todo en manos de la sospecha!
Hola a todos, he seguido el hilo minuciosamente pero ufff no tengo manera de echar a andar vmware sobre mi ubuntu he probado ya mil tutoriales y posteado en muchos foros y nada siempre me quedo aqui
What is the location of the directory of C header files that match your running
kernel? [/lib/modules/2.6.24-19-generic/build/include] /usr/src/linux-headers-2.6.24-19-generic/include
Extracting the sources of the vmmon module.
Building the vmmon module.
Building for VMware Server 1.0.0.
Using 2.6.x kernel build system.
make: se ingresa al directorio `/tmp/vmware-config14/vmmon-only’
make -C /usr/src/linux-headers-2.6.24-19-generic/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.24-19-generic’
CC [M] /tmp/vmware-config14/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config14/vmmon-only/./include/vmware.h:25,
from /tmp/vmware-config14/vmmon-only/linux/driver.c:52:
/tmp/vmware-config14/vmmon-only/./include/vm_basic_types.h:160: error: tipos en conflicto para ‘uintptr_t’
include/linux/types.h:40: error: la declaración previa de ‘uintptr_t’ estaba aquí
En el fichero incluído de /tmp/vmware-config14/vmmon-only/linux/driver.h:20,
de /tmp/vmware-config14/vmmon-only/linux/driver.c:53:
/tmp/vmware-config14/vmmon-only/./include/compat_wait.h:37:5: aviso: «VMW_HAVE_EPOLL» no está definido
/tmp/vmware-config14/vmmon-only/./include/compat_wait.h:43:5: aviso: «VMW_HAVE_EPOLL» no está definido
In file included from /tmp/vmware-config14/vmmon-only/linux/driver.h:20,
from /tmp/vmware-config14/vmmon-only/linux/driver.c:53:
/tmp/vmware-config14/vmmon-only/./include/compat_wait.h:60: error: tipos en conflicto para ‘poll_initwait’
include/linux/poll.h:65: error: la declaración previa de ‘poll_initwait’ estaba aquí
/tmp/vmware-config14/vmmon-only/linux/driver.c:160: aviso: inicialización desde un tipo de puntero incompatible
/tmp/vmware-config14/vmmon-only/linux/driver.c:164: aviso: inicialización desde un tipo de puntero incompatible
/tmp/vmware-config14/vmmon-only/linux/driver.c: En la función ‘__LinuxDriver_Ioctl’:
/tmp/vmware-config14/vmmon-only/linux/driver.c:1833: error: ‘struct mm_struct’ no tiene un miembro llamado ‘dumpable’
make[2]: *** [/tmp/vmware-config14/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config14/vmmon-only] Error 2
make[1]: se sale del directorio `/usr/src/linux-headers-2.6.24-19-generic’
make: *** [vmmon.ko] Error 2
make: se sale del directorio `/tmp/vmware-config14/vmmon-only’
Unable to build the vmmon module.
For more information on how to troubleshoot module-related problems, please
visit our Web site at «http://www.vmware.com/download/modules/modules.html» and
«http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html».
Execution aborted.
La ruta del kernel esta bien puesta, el parche ejecutado, pero no hay manera.
Alguien me puede echar una mano estoy ya que me subo por las paredes
Gracias a todos
UBUNTU ULTIMATE 1.8
Instalo: VMware-server-1.0.6-91891.tar.gz (descargado de http://www.vmware.com)
Y necesito enlazar las «libgcc» tal y como se muestra.
Por el momento OK.
Gracias.
Exelente articulo muchas gracias por la ayuda!! Al fin pude instalar vmware en Ubuntu. Saludos! Muy buen articulo!
Muchas gracias, me ha sido de utilidad.
Muchas Gracias!!! me estaba volviendo loco