I had trouble building the vmhgfs module (the one that allows shared folders between guest and host computers) when trying to install VMWare Tools in Ubuntu 7.10 running in VMware Workstation 6.0.2 build-59824 on Windows XP. I was getting the following error:
Trying to find a suitable vmhgfs module for your running kernel. None of the pre-built vmhgfs modules for VMware Tools is suitable for your running kernel. Do you want this program to try to build the vmhgfs module for your system (you need to have a C compiler installed on your system)? [yes] Extracting the sources of the vmhgfs module. Building the vmhgfs module. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config0/vmhgfs-only' make -C /lib/modules/2.6.22-15-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-headers-2.6.22-15-generic' CC [M] /tmp/vmware-config0/vmhgfs-only/backdoor.o CC [M] /tmp/vmware-config0/vmhgfs-only/backdoorGcc32.o CC [M] /tmp/vmware-config0/vmhgfs-only/bdhandler.o CC [M] /tmp/vmware-config0/vmhgfs-only/cpName.o CC [M] /tmp/vmware-config0/vmhgfs-only/cpNameLinux.o CC [M] /tmp/vmware-config0/vmhgfs-only/cpNameLite.o CC [M] /tmp/vmware-config0/vmhgfs-only/dbllnklst.o CC [M] /tmp/vmware-config0/vmhgfs-only/dentry.o CC [M] /tmp/vmware-config0/vmhgfs-only/dir.o CC [M] /tmp/vmware-config0/vmhgfs-only/eventManager.o CC [M] /tmp/vmware-config0/vmhgfs-only/file.o CC [M] /tmp/vmware-config0/vmhgfs-only/filesystem.o /tmp/vmware-config0/vmhgfs-only/filesystem.c: In function ‘HgfsInitFileSystem’: /tmp/vmware-config0/vmhgfs-only/filesystem.c:582: error: too few arguments to function ‘kmem_cache_create’ /tmp/vmware-config0/vmhgfs-only/filesystem.c:593: error: too few arguments to function ‘kmem_cache_create’ make[2]: *** [/tmp/vmware-config0/vmhgfs-only/filesystem.o] Error 1 make[1]: *** [_module_/tmp/vmware-config0/vmhgfs-only] Error 2 make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-15-generic' make: *** [vmhgfs.ko] Error 2 make: Leaving directory `/tmp/vmware-config0/vmhgfs-only' Unable to build the vmhgfs module. The filesystem driver (vmhgfs module) is used only for the shared folder feature. The rest of the software provided by VMware Tools is designed to work independently of this feature. If you wish to have the shared folders feature, you can install the driver by running vmware-config-tools.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.
A quick google search turned up this thread which contained the solution to my problem:
sudo aptitude install build-essential linux-headers-$(uname -r) cd /tmp tar -xzvf VMwareTools-6.0.2-59824.tar.gz cd vmware-tools-distrib/lib/modules/source cp vmhgfs.tar vmhgfs.tar.old tar xvf vmhgfs.tar cd vmhgfs-only chmod 644 compat_slab.h vi compat_slab.h
Search-> #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 22) || defined(VMW_KMEMCR_HAS_DTOR)
Fix-> #if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 22) || defined(VMW_KMEMCR_HAS_DTOR)
Save Changes
chmod 444 compat_slab.h cd .. rm vmhgfs.tar tar cvf vmhgfs.tar vmhgfs-only cd /tmp/vmware-tools-distrib sudo ./vmware-install.pl