If vmplayer fails to compile on your 2.6.20 kernel with the following error
Extracting the sources of the vmmon module. Building the vmmon module. Building for VMware Player 1.0.2 or 1.0.3 or VMware Workstation 5.5.2 or 5.5.3. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config1/vmmon-only' make -C /lib/modules/2.6.20-gentoo-r6/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-2.6.20-gentoo-r6' CC [M] /tmp/vmware-config1/vmmon-only/linux/driver.o In file included from /tmp/vmware-config1/vmmon-only/linux/driver.c:85: /tmp/vmware-config1/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘...’ before ‘compat_exit’ /tmp/vmware-config1/vmmon-only/./include/compat_kernel.h:21: error: expected declaration specifiers or ‘...’ before ‘exit_code’ /tmp/vmware-config1/vmmon-only/./include/compat_kernel.h:21: warning: type defaults to ‘int’ in declaration of ‘_syscall1’ make[2]: *** [/tmp/vmware-config1/vmmon-only/linux/driver.o] Error 1 make[1]: *** [_module_/tmp/vmware-config1/vmmon-only] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.20-gentoo-r6' make: *** [vmmon.ko] Error 2 make: Leaving directory `/tmp/vmware-config1/vmmon-only' Unable to build the vmmon module.
change dir to /opt/vmware/player/lib/modules/source and untar vmmon.tar
# cd /opt/vmware/player/lib/modules/source/ # tar xvf vmmon.tar vmmon-only/ vmmon-only/autoconf/ vmmon-only/autoconf/geninclude.c vmmon-only/autoconf/epoll.c ...
next, edit the file vmmon-only/include/compat_kernel.h and add the following preprocessor statements (in bold font)
/* * compat_exit() provides an access to the exit() function. It must * be named compat_exit(), as exit() (with different signature) is * provided by x86-64, arm and other (but not by i386). */ #define __NR_compat_exit __NR_exit #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) static inline _syscall1(int, compat_exit, int, exit_code); #endif
save, exit the editor, rename the original tarball and create an updated vmmon.tar tarball:
# mv vmmon.tar vmmon.orig.tar # tar cvf vmmon.tar vmmon-only
now run vmware-config.pl again
# /opt/vmware/player/bin/vmware-config.pl ... The configuration of VMware Player 1.0.3 build-34682 for Linux for this running kernel completed successfully. You can now run VMware Player by invoking the following command: "/opt/vmware/player/bin/vmplayer". Enjoy, --the VMware team
Thank you so much for this!
Thx very much for this workaround. Now my VMWare-Server runs well again on Gentoo with 2.6.20-gentoo-r7 #1 SMP.
I realy don’t understand how u become the idea to finish this problem.
Thx again.
thank you, it works also on ubuntu 7.04
great
Thanks a million for this one. Once I found vmmon-only in /usr/lib/vmware/modules/source on Ubuntu 7.04 I got vmware server successfully installed with the same mod.
yer bookmarked and I’ll be back for more help