Problems getting VMware Server to work on Ubuntu 9.10

1

1

I'm trying to get VMware Server 2.0.2 (64-bit version) to work on my Ubuntu workstation.

However, the install script ($ sudo ./vmware-install.pl) runs into problems with the kernel modules:

[...]

What is the location of the directory of C header files that match your running
kernel? [/lib/modules/2.6.31-14-generic/build/include] 

Extracting the sources of the vmmon module.

Building the vmmon module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config4/vmmon-only'
make -C /lib/modules/2.6.31-14-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.31-14-generic'
  CC [M]  /tmp/vmware-config4/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config4/vmmon-only/linux/driver.c:31:
/tmp/vmware-config4/vmmon-only/./include/compat_wait.h:78: error: conflicting types for ‘poll_initwait’
include/linux/poll.h:70: note: previous declaration of ‘poll_initwait’ was here
In file included from /tmp/vmware-config4/vmmon-only/./include/vmware.h:38,
                 from /tmp/vmware-config4/vmmon-only/linux/driver.c:99:
/tmp/vmware-config4/vmmon-only/./include/vm_basic_types.h:108:7: warning: "__FreeBSD__" is not defined
In file included from /tmp/vmware-config4/vmmon-only/./include/vcpuset.h:103,
                 from /tmp/vmware-config4/vmmon-only/./include/modulecall.h:37,
                 from /tmp/vmware-config4/vmmon-only/./common/vmx86.h:33,
                 from /tmp/vmware-config4/vmmon-only/linux/driver.h:29,
                 from /tmp/vmware-config4/vmmon-only/linux/driver.c:101:
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:329:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:333:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:401:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:407:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:460:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:506:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:551:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:595:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:640:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:684:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:729:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:945:7: warning: "_MSC_VER" is not defined
/tmp/vmware-config4/vmmon-only/./include/vm_atomic.h:947:7: warning: "_MSC_VER" is not defined

[...]

/tmp/vmware-config4/vmmon-only/./include/vm_asm_x86.h:922:7: warning: "_MSC_VER" is not defined
In file included from /tmp/vmware-config4/vmmon-only/./include/vm_asm.h:41,
                 from /tmp/vmware-config4/vmmon-only/linux/driver.c:103:
/tmp/vmware-config4/vmmon-only/./include/vm_asm_x86_64.h:56:7: warning: "_MSC_VER" is not defined
In file included from /tmp/vmware-config4/vmmon-only/linux/driver.c:119:
/tmp/vmware-config4/vmmon-only/./common/hostif.h:53:7: warning: "WINNT_DDK" is not defined
/tmp/vmware-config4/vmmon-only/linux/driver.c: In function ‘LinuxDriverSyncCallOnEachCPU’:
/tmp/vmware-config4/vmmon-only/linux/driver.c:1423: error: too many arguments to function ‘smp_call_function’
/tmp/vmware-config4/vmmon-only/linux/driver.c: In function ‘LinuxDriver_Ioctl’:
/tmp/vmware-config4/vmmon-only/linux/driver.c:1987: error: ‘struct task_struct’ has no member named ‘euid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:1987: error: ‘struct task_struct’ has no member named ‘uid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:1988: error: ‘struct task_struct’ has no member named ‘fsuid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:1988: error: ‘struct task_struct’ has no member named ‘uid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:1989: error: ‘struct task_struct’ has no member named ‘egid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:1989: error: ‘struct task_struct’ has no member named ‘gid’
/tmp/vmware-config4/vmmon-only/linux/driver.c:2007: error: too many arguments to function ‘smp_call_function’
make[2]: *** [/tmp/vmware-config4/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config4/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.31-14-generic'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config4/vmmon-only'
Unable to build the vmmon module.

Execution aborted.

Am I missing some required packages? Any other ideas?

This is 64-bit Ubuntu 9.10 (Karmic Koala). uname -a returns Linux hostname 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux.

Edit: Got VMware Server 2.0.2 working. However, if you have some tips on getting VMware Server 1.0.x to work with latest Ubuntu easily (without having to compile the whole kernel, for instance), please share those too! My first impression is that I don't like 2.0 at all, and would much rather use 1.0.x if only I got it working.

Jonik

Posted 2010-01-18T12:15:02.257

Reputation: 5 352

For what it's worth, I ended up dumping VMware Server altogether for now, after I found out that VMware Player does everything I currently need (just run some existing Windows virtual machines). The UI and overall integration with Linux desktop is really smooth in Player. – Jonik – 2010-02-14T11:25:50.810

Answers

1

Seems I got it working, with advice from http://www.ubuntugeek.com/how-to-install-vmware-server-2-0-x-in-ubuntu-9-10-karmic.html

  1. Download this: http://www.ubuntugeek.com/images/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.tgz and untar it. (This is for 2.0.1 but that does not seem to matter.)

  2. Run sudo sh vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh

    NB: If you have VMware libs installed somewhere else than /usr/lib/ (e.g. /usr/local/lib), you'll need to manually fix some paths in that script.

  3. Then, as the script suggested, sudo vmware-config.pl -d

This finished up the configuration:

[...]

The configuration of VMware Server 2.0.2 build-203138 for Linux for this 
running kernel completed successfully.

Running vmware now launches the web UI at https://localhost:8333/ui/.

(Now, VMware 2.0 feels totally strange, and I don't really know how to access/use the web interface, but that's another story... In fact, if anyone knows of an easy way of getting VMware Server 1.0.10 to work with the latest Ubuntu, I'd like to know too!)

Update

I've given up using VMware Server altogether as it's no longer supported and it's become increasingly difficult to get it working on modern Ubuntu versions. If you need to create & run Windows virtual machines, check out e.g. this question on Ask Ubuntu for alternative ways.

Jonik

Posted 2010-01-18T12:15:02.257

Reputation: 5 352

Useful thread: http://ubuntuforums.org/showthread.php?t=1313055. Seems like to use 1.0.x on latest Ubuntu you'd need to use an older kernel or then compile the whole kernel yourself. :-/

– Jonik – 2010-01-18T13:09:21.947