I've installed Vmware 6.5 on Ubuntu 10.10...

when I start vmware player/workstation its asking for linux kernel header for some compilation but I'm not able to find the appropriate package, see the Image below....

Error Message


after running following commands

sudo -s    
cd /lib/modules/$(uname -r)/build/include/linux    
ln -s ../generated/utsrelease.h    
ln -s ../generated/autoconf.h

Error has been changed like below....

ERROR: modinfo: could not find module vmmon
ERROR: modinfo: could not find module vmnet
ERROR: modinfo: could not find module vmblock
ERROR: modinfo: could not find module vmci
ERROR: modinfo: could not find module vsock

Using 2.6.x kernel build system. make: Entering directory /tmp/vmware-root/modules/vmmon-only' make -C /lib/modules/2.6.35-22-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory/usr/src/linux-headers-2.6.35-22-generic' CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o In file included from /tmp/vmware-root/modules/vmmon-only/linux/driver.c:31: /tmp/vmware-root/modules/vmmon-only/./include/compat_wait.h:78: error: conflicting types for ‘poll_initwait’ include/linux/poll.h:72: note: previous declaration of ‘poll_initwait’ was here


After using Greg Suarez's suggestion, tou will need to patch a few things to get this to work. Taken (and corrected) from: http://blog.gnu-designs.com/solved-building-vmware-workstation-modules-on-linux-2-6-32

tar xvf /usr/lib/vmware/modules/source/vmnet.tar -C /tmp
tar xvf /usr/lib/vmware/modules/source/vmci.tar -C /tmp

cd /tmp

perl -pi -e 's,("vnetInt.h"),\1\n#include "compat_sched.h",' vmnet-only/vnetUserListener.c
perl -pi -e 's,("compat_page.h"),\1\n#include "compat_sched.h",' vmci-only/include/pgtbl.h

tar cvf /usr/lib/vmware/modules/source/vmnet.tar vmnet-only
tar cvf /usr/lib/vmware/modules/source/vmci.tar vmci-only

Now you should be able to continue on with installing vmplayer/workstation

| improve this answer | |
  • still can't find those module after doing this stuff !!! – shahjapan Oct 29 '10 at 7:04

Try the following:

sudo -s

cd /lib/modules/$(uname -r)/build/include/linux

ln -s ../generated/utsrelease.h

ln -s ../generated/autoconf.h
| improve this answer | |
  • now unable to compile virtual machine monitor here is the loggile content Log for VMware Workstation pid=3427 version=6.5.1 build=build-126130 option=Release app| Host codepage=UTF-8 encoding=UTF-8 Oct 19 10:39:19.048: app| Logging to /tmp/vmware-root/setup-3427.log Oct 19 10:39:21.009: app| Extracting the sources of the vmmon module. Oct 19 10:39:21.063: app| Building module with command: /usr/bin/make -C /tmp/vmware-root/modules/vmmon-only auto-build SUPPORT_SMP=1 HEADER_DIR=/lib/modules/2.6.35-22-generic/build/include CC=/usr/bin/gcc GREP=/usr/bin/make IS_GCC_3=no VMCCVER=4.4.5 – shahjapan Oct 19 '10 at 5:12

Same here. The ln stuff is great, but it seems that the vmware modules are written for older kernels in general. After making sure autoconf.h and utsversion.h are where vmware expects them, I get the same conflicting types error in poll.h.

I can change the Makefile that the script uses to build the modules to use a -DVMW_HAVE_EPOLL, which fixes the problem, but then another error pops up. This module code just isn't make for Ubuntu, it seems.

| improve this answer | |

Maybe that package isn't installed, try:

sudo apt-get install linux-headers-`uname -r`
| improve this answer | |
  • linux-headers-2.6.35-22-generic is already the newest version. linux-headers-2.6.35-22-generic set to manually installed. – shahjapan Oct 14 '10 at 13:15

Not the answer you're looking for? Browse other questions tagged or ask your own question.