How-to Install VMware Player / Workstation on 2.6.25 Kernel

Update: Looking for 2.6.26 howto – here you go !

After the successful How-to install VMware Player and Workstation on 2.6.24 Linux kernel and with 2.6.25 up and running on my Debian Unstable (Sid) I had no option but to update the procedure.

  1. Download latest and greatest products from VMware
  2. Install and patch as described in the previous post (use vmware-any-any-update-116.tgz)
  3. Download the vmware-any-any-update-117-very-ALPHA.tgz
  4. Extract the archive in /usr/lib/vmware/modules/source (or wherever are yours vmblock.tar, vmmon.tar, vmnet.tar)
  5. Run vmware-2.6.25.sh and then vmware-config.pl
  6. If compiles – have fun, if not drop me a line :)

Important notes:

  1. The original author of the patches is 6xx I have modified the vmmon.patch since otherwise I was getting the error at the bottom of the article. The original patches can be found here
  2. vmware-2.6.25.sh is a very dumb script – read it carefully before executing. It will be even better to paste the commands one by one
  3. This any-any patch has nothing to do with the original any-any patches by Petr therefor I do not want to take the credit for it. All I’m trying to achieve is to gather the Linux VMware community here and share ideas. If someone wants to help and make the patches more unified and smarter just drop me a mail (can be found on the home page)
  4. I take no responsibility for any problems or damage that may
    occur as a result of using any of the information contained in this article.
    Use the information at your own risk ;)

Error log:

include/asm/page.h: In function ‘pte_t native_make_pte(pteval_t)’:
include/asm/page.h:128: error: expected primary-expression before ‘)’ token
include/asm/page.h:128: error: expected ‘;’ before ‘{’ token
include/asm/page.h:128: error: expected primary-expression before ‘.’ token
include/asm/page.h:128: error: expected `;' before ‘}’ token
include/asm/paravirt.h: In function ‘pte_t __pte(pteval_t)’:
include/asm/paravirt.h:955: error: expected primary-expression before ‘)’ token
include/asm/paravirt.h:955: error: expected ‘;’ before ‘{’ token
include/asm/paravirt.h:955: error: expected primary-expression before ‘.’ token
include/asm/paravirt.h:955: error: expected `;' before ‘}’ token
include/asm/paravirt.h: In function ‘void pmd_clear(pmd_t*)’:
include/asm/paravirt.h:1171: warning: missing braces around initializer for ‘pud_t’
include/asm/paravirt.h:1171: warning: missing braces around initializer for ‘pgd_t’
include/asm/paravirt.h:1171: error: cannot convert ‘pud_t’ to ‘pgdval_t’ in initialization
make[2]: *** [/tmp/vmware-config2/vmmon-only/common/task.o] Error 1
make[1]: *** [_module_/tmp/vmware-config2/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.25-1-686'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config2/vmmon-only'
Unable to build the vmmon module.

74 Replies to “How-to Install VMware Player / Workstation on 2.6.25 Kernel”

  1. Per your instructions, I have extracted the archive above to the directory above (which is correct in my case). How do I do step 5? (Run vmware-2.6.25.sh and then vmware-config.pl). No way to do this in GUI, I presume? I can not seem to get t to this dir via the consol.

    I know this is a newbie question, steep learning curve. Thanks!

    Mike

  2. I applied your patch to a 2.6.25 minor patch 3 system, and this is what I get:

    include/asm/page.h: In function ‘pte_t native_make_pte(pteval_t)’:
    include/asm/page.h:128: error: expected primary-expression before ‘)’ token
    include/asm/page.h:128: error: expected ‘;’ before ‘{‘ token
    include/asm/page.h:128: error: expected primary-expression before ‘.’ token
    include/asm/page.h:128: error: expected `;’ before ‘}’ token
    In file included from /tmp/vmware-config4/vmmon-only/common/task.c:1194:
    /tmp/vmware-config4/vmmon-only/common/task_compat.h: At global scope:
    /tmp/vmware-config4/vmmon-only/common/task_compat.h:9: warning: ‘typedef’ was ignored in this declaration
    make[2]: *** [/tmp/vmware-config4/vmmon-only/common/task.o] Error 1
    make[1]: *** [_module_/tmp/vmware-config4/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/linux-2.6.25-fw3′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-config4/vmmon-only’
    Unable to build the vmmon module.

  3. @Ron

    Can you check if in vmmon-only (in vmmon.tar) vmmon-only/common/task.c has #define _ASM_X86_PAGE_H

    Also can you paste the output from running the vmware-2.6.25.sh

    Mine looks like:
    patching file include/vcpuset.h
    Hunk #1 succeeded at 70 with fuzz 2.
    patch unexpectedly ends in middle of line
    patching file common/task.c
    patch unexpectedly ends in middle of line
    patching file bridge.c
    Hunk #2 FAILED at 853.
    1 out of 2 hunks FAILED — saving rejects to file bridge.c.rej
    patching file filter.c
    patching file vmnetInt.h
    patching file linux/dentry.c
    Hunk #1 succeeded at 112 (offset 14 lines).
    patching file linux/filesystem.c
    Hunk #1 succeeded at 273 (offset 14 lines).
    Hunk #2 succeeded at 305 (offset 14 lines).
    patching file linux/super.c
    Hunk #1 succeeded at 37 (offset 14 lines).
    Hunk #2 succeeded at 54 (offset 14 lines).
    Hunk #3 succeeded at 142 (offset 14 lines).
    Hunk #4 succeeded at 152 (offset 14 lines).

  4. Great job done!
    It works for me flawless in a Opensuse 11.0 x86_64 system with vmware-server versión 1.0.5 and kernel 2.6.25 :)

  5. Hi. Is there any way to make this work with workstation 5.5? The above procedure fails to build on 2.6.25-14 (fresh Fedora 9). server 1.0.5 doesn’t build modules either, looks like Fedora kernel issue?

  6. I think the problem is the different content of the /usr/lib/vmware/modules/source:

    -r–r–r– 1 root root 706560 2008-05-15 21:57 vmmon.tar
    -r–r–r– 1 root root 378880 2008-05-15 21:57 vmnet.tar
    -r–r–r– 1 root root 51200 2008-05-15 21:57 vmppuser.tar

    vmblock.tar doesn’t exist, perhaps that’s different in version 6?

    I have to use 5.5, company won’t buy upgrade license.

  7. Hey, just wanted to let you know – I actually had bad workstation tarball. Re-synced it from backup, reinstalled, patched 116 with 117 and in the end all worked fine – 5.5 builds on Fedora’s 2.6.25 kernel. Checked the server 1.0.5, no problems either.

    Thanks for help, anyway

  8. Hi,
    I am using VMWare Workstation 6.0.3_80004 x64.Tried patching the modules with the following output:

    ./vmware-2.6.25.sh
    patching file include/vcpuset.h
    patch unexpectedly ends in middle of line
    patching file common/task.c
    patch unexpectedly ends in middle of line
    Hunk #1 FAILED at 25.
    1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
    patching file bridge.c
    patching file filter.c
    patching file vmnetInt.h
    patching file linux/dentry.c
    patching file linux/filesystem.c
    patching file linux/super.c

    After that I ran vmware-config.pl which built the modules but while installing them, I got the following error:

    Building modules, stage 2.
    MODPOST 1 modules
    CC /tmp/vmware-config6/vmblock-only/vmblock.mod.o
    LD [M] /tmp/vmware-config6/vmblock-only/vmblock.ko
    make[1]: Leaving directory `/usr/src/kernels/2.6.25.3-18.fc9.x86_64′
    cp -f vmblock.ko ./../vmblock.o
    make: Leaving directory `/tmp/vmware-config6/vmblock-only’
    sh: line 1: 6632 Killed ‘insmod’ -p ‘/tmp/vmware-config6/vmblock.o’ > /dev/null 2>&1

    Message from syslogd@localhost at May 19 15:09:58 …
    kernel: Oops: 0002 [1] SMP
    Unable to make a vmblock module that can be loaded in the running kernel:

    Message from syslogd@localhost at May 19 15:09:58 …
    kernel: Code: f3 a4 48 89 42 10 41 ff c0 48 8b 95 18 ff ff ff 0f b7 42 3c 41 39 c0 72 a3 48 8b 8d 30 ff ff ff 4c 8b 69 10 49 8d 85 00 22 00 00 89 85 00 22 00 00 49 89 85 08 22 00 00 31 c0 49 c7 84 05 00

    Message from syslogd@localhost at May 19 15:09:58 …
    kernel: CR2: ffffffff88576680

    What went wrong there please?
    Z.

  9. Sorry I have not tested with x64.

    Can you post some more information (kernerl version, arch, etc) ?

    If i find some 64bit AMD i will try it out.

  10. Thank you for providing these patches. Thanks to you I’ve been able to get Workstation6.0.2 installed and running on Fedora9 (2.6.25.3-18 i686).

  11. Thansk, it seems work on

    Linux glider 2.6.25.3-18.fc9.i686 #1 SMP Tue May 13 05:38:53 EDT 2008 i686 i686 i386 GNU/Linux
    gcc-4.3.0-8.i386
    gcc-c++-4.3.0-8.i386
    VMware-player-2.0.3-80004.i386.tar.gz

    but i have these warning, may be you are interested.

    on appling pathc ALPHA i have these message:

    patching file include/vcpuset.h
    Hunk #1 succeeded at 70 with fuzz 2.
    patch unexpectedly ends in middle of line
    patching file common/task.c
    patch unexpectedly ends in middle of line
    patching file bridge.c
    Hunk #2 FAILED at 853.
    1 out of 2 hunks FAILED — saving rejects to file bridge.c.rej
    patching file filter.c
    patching file vmnetInt.h
    patching file linux/dentry.c
    Hunk #1 succeeded at 112 (offset 14 lines).
    patching file linux/filesystem.c
    Hunk #1 succeeded at 273 (offset 14 lines).
    patching file linux/super.c
    Hunk #1 succeeded at 37 (offset 14 lines).
    Hunk #3 succeeded at 142 (offset 14 lines).

    in config.pl I have these warning:
    ….
    CC [M] /tmp/vmware-config3/vmmon-only/common/task.o
    cc1plus: warning: command line option “-Werror-implicit-function-declaration” is valid for C/ObjC but not for C++
    cc1plus: warning: command line option “-Wdeclaration-after-statement” is valid for C/ObjC but not for C++
    cc1plus: warning: command line option “-Wno-pointer-sign” is valid for C/ObjC but not for C++
    cc1plus: warning: command line option “-Wstrict-prototypes” is valid for Ada/C/ObjC but not for C++
    In file included from /tmp/vmware-config3/vmmon-only/common/task.c:1194:
    /tmp/vmware-config3/vmmon-only/common/task_compat.h:9: warning: ‘typedef’ was ignored in this declaration
    /tmp/vmware-config3/vmmon-only/common/task_compat.h: In function ‘void Task_Switch_V45(VMDriver*, Vcpuid)’:
    /tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::validEIP’ may be used uninitialized in this function
    /tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::cs’ may be used uninitialized in this function
    /tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::rsp’ may be used uninitialized in this function
    /tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::rip’ may be used uninitialized in this function
    CC [M] /tmp/vmware-config3/vmmon-only/common/vmciContext.o
    ….
    CC [M] /tmp/vmware-config3/vmmon-only/vmcore/moduleloop.o
    LD [M] /tmp/vmware-config3/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    WARNING: modpost: module vmmon.ko uses symbol ‘init_mm’ marked UNUSED
    CC /tmp/vmware-config3/vmmon-only/vmmon.mod.o

  12. Hi Peter,

    I got following issue… pls help me (I gt the promt to enter serial too)

    Stopping xinetd: [ OK ]
    Starting xinetd: [ OK ]
    Configuring the VMware VmPerl Scripting API.
    Can’t locate ExtUtils/Embed.pm in @INC (@INC contains: /usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/local/lib64/perl5/site_perl/5.10.0/x86_64-linux-thread-multi /usr/local/lib/perl5/site_perl/5.10.0 /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl .).
    BEGIN failed–compilation aborted.
    Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6775.
    Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6776.
    Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6776.
    Could not find necessary components to build the VMware VmPerl Scripting API.
    Look in your Linux distribution to see if there is a perl-devel package.
    Install that package if it exists and then re-run this installation program.

    ********
    The VMware VmPerl Scripting API was not installed. Errors encountered during
    compilation and installation of the module can be found here:
    /tmp/vmware-config14

    You will not be able to use the “vmware-cmd” program.

    Errors can be found in the log file:
    ‘/tmp/vmware-config14/control-only/make.log’
    ********

    Hit enter to continue.

  13. You will not be able to use the “vmware-cmd” program.

    Errors can be found in the log file:
    ‘/tmp/vmware-config15/control-only/make.log’
    ********

    Hit enter to continue.

    Generating SSL Server Certificate

    In which directory do you want to keep your virtual machine files?
    [/data/vmware/VirtualMachines] /data/vmware/VirtualMachines

    Do you want to enter a serial number now? (yes/no/help) [no] yes

    Please enter your 20-character serial number.

    Type XXXXX-XXXXX-XXXXX-XXXXX or ‘Enter’ to cancel: XXXXX-XXXXX-XXXXX-XXXXX
    see the last message….
    but VMware is not working…
    This is VMware server VMware Server 1.0.5 on Fedora 9 X86_64

    Starting VMware services:
    Virtual machine monitor [ OK ]
    Virtual ethernet [ OK ]
    Bridged networking on /dev/vmnet0 [ OK ]
    Host-only networking on /dev/vmnet1 (background) [ OK ]
    Host-only networking on /dev/vmnet8 (background) [ OK ]
    NAT service on /dev/vmnet8 [ OK ]

    The configuration of VMware Server 1.0.5 build-80187 for Linux for this running
    kernel completed successfully.

  14. These instructions worked for me – using Workstation 6.0 on debian 2.6.25.2. However when I open any image I get this error. Any ideas?
    thanks
    Version mismatch with vmmon module: expecting 161.0, got 167.0.
    You have an incorrect version of the `vmmon’ kernel module.
    Try reinstalling VMware Workstation.

  15. Yesterday (5/26) I installed the anyany117 patch and ran the runme.pl which got me a clean compile of workstation 6.03 under Fedora 9 (64). However, when I start a vm I get a cryptic message “Unable to change virtual machine power state: Failed to connect to peer process.” These have an April 22nd date for vmmon and vmnet. However, as mentioned, everything compiles fine. That cryptic message has no log entry or other breadcrumb to suggest what it means. I didn’t think spending $189 would entitle me to this much heartburn. Any suggestions here?

  16. Works great on debian sid + vmware workstation
    I just had to manually adapt the patch to bridge.c.

    Thank you!

  17. took me a while but I finally got it working. Had to go back and run vmware-any-any-update115 first followed by the patches above. I had found an -update116 that other people used but that apparently was not “official” and caused the version mismatch problems.
    Thanks; I am now up and running with kernel 2.6.25

    >> ———————-
    # John Says:
    May 24th, 2008 at 3:29 pm

    These instructions worked for me – using Workstation 6.0 on debian 2.6.25.2. However when I open any image I get this error. Any ideas?
    thanks
    Version mismatch with vmmon module: expecting 161.0, got 167.0.
    You have an incorrect version of the `vmmon’ kernel module.
    Try reinstalling VMware Workstation.

  18. For all “Version mismatch with vmmon module” check the 2.6.24 post. There are couple of suggestions that are reported as working

  19. If you compile, like me, vanilla Kernel (I have tested with 2.6.25.4) you must select as built-in the config option

    Kernel Hacking –> Enable unused/obsolete exported symbols

    in order to make Vmware module compile.

    I have tested the procedure with:

    Kernel Version: vanilla 2.6.25.4
    Vmware Version: 6.0.2-59824

    Thank you Peter.
    Breathe

  20. Thank you very much! What you have done is a very useful thing for a lot of people like me. Thank you for helping strangers like me.

  21. @Julio you are welcome.
    Currently I’m trying to save some cash for domain and hosting, after that I will try building a real community around linux virtualization

  22. Thanks for the excellent work. I got an error with one hunk, but still, VMWare works fine.

    [200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ l
    insgesamt 1936
    drwxr-xr-x 3 root root 4096 2008-06-09 08:46 ./
    drwxr-xr-x 4 root root 4096 2008-06-05 08:24 ../
    drwxr-xr-x 2 root root 4096 2008-05-07 21:01 patches/
    -r–r–r– 1 root root 235520 2008-06-05 08:24 vmblock.tar
    -r–r–r– 1 root root 1126400 2008-06-05 08:24 vmmon.tar
    -r–r–r– 1 root root 532480 2008-06-05 08:24 vmnet.tar
    -r–r–r– 1 root root 51200 2008-06-05 08:24 vmppuser.tar
    -rwxr-xr-x 1 root root 461 2008-05-07 21:04 vmware-2.6.25.sh*
    [200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ sudo sh vmware-2.6.25.sh
    patching file include/vcpuset.h
    Hunk #1 succeeded at 70 with fuzz 2.
    patch unexpectedly ends in middle of line
    patching file common/task.c
    patch unexpectedly ends in middle of line
    Hunk #1 FAILED at 25.
    1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
    patching file bridge.c
    patching file filter.c
    patching file vmnetInt.h
    Hunk #1 FAILED at 78.
    1 out of 1 hunk FAILED — saving rejects to file vmnetInt.h.rej
    patching file linux/dentry.c
    patching file linux/filesystem.c
    patching file linux/super.c
    [200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ sudo vmware-config.pl
    Making sure services for VMware Workstation are stopped.

    Stopping VMware services:
    Virtual machine monitor done
    Blocking file system: done
    Bridged networking on /dev/vmnet0 done
    Host network detection done
    DHCP server on /dev/vmnet1 done
    Host-only networking on /dev/vmnet1 done
    DHCP server on /dev/vmnet8 done
    NAT service on /dev/vmnet8 done
    Host-only networking on /dev/vmnet8 done
    Virtual ethernet done

    Configuring fallback GTK+ 2.4 libraries.

    In which directory do you want to install the theme icons?
    [/usr/share/icons]

    What directory contains your desktop menu entry files? These files have a
    .desktop file extension. [/usr/share/applications]

    In which directory do you want to install the application’s icon?
    [/usr/share/pixmaps]

    Trying to find a suitable vmmon module for your running kernel.

    None of the pre-built vmmon modules for VMware Workstation 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.25/build/include]

    Extracting the sources of the vmmon module.

    Building the vmmon module.

    Using 2.6.x kernel build system.
    make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmmon-only’
    make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
    make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
    CC [M] /tmp/vmware-config1/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-config1/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/hash.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/task.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciContext.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDatagram.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDriver.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDs.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciGroup.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciHashtable.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciProcess.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciResource.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmciSharedMem.o
    CC [M] /tmp/vmware-config1/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-config1/vmmon-only/vmcore/moduleloop.o
    LD [M] /tmp/vmware-config1/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    WARNING: modpost: module vmmon.ko uses symbol ‘init_mm’ marked UNUSED
    CC /tmp/vmware-config1/vmmon-only/vmmon.mod.o
    LD [M] /tmp/vmware-config1/vmmon-only/vmmon.ko
    make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
    cp -f vmmon.ko ./../vmmon.o
    make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmmon-only’
    The module loads perfectly in the running kernel.

    /dev is dynamic:
    Trying to find a suitable vmblock module for your running kernel.

    None of the pre-built vmblock modules for VMware Workstation is suitable for
    your running kernel. Do you want this program to try to build the vmblock
    module for your system (you need to have a C compiler installed on your
    system)? [yes]

    Extracting the sources of the vmblock module.

    Building the vmblock module.

    Using 2.6.x kernel build system.
    make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmblock-only’
    make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
    make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
    CC [M] /tmp/vmware-config1/vmblock-only/linux/block.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/control.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/dbllnklst.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/dentry.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/file.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/filesystem.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/inode.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/module.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/stubs.o
    CC [M] /tmp/vmware-config1/vmblock-only/linux/super.o
    LD [M] /tmp/vmware-config1/vmblock-only/vmblock.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /tmp/vmware-config1/vmblock-only/vmblock.mod.o
    LD [M] /tmp/vmware-config1/vmblock-only/vmblock.ko
    make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
    cp -f vmblock.ko ./../vmblock.o
    make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmblock-only’
    The module loads perfectly in the running kernel.

    /dev is dynamic:
    This program previously created the file /dev/vmnet0, and was about to remove
    it. Somebody else apparently did it already.

    This program previously created the file /dev/vmnet1, and was about to remove
    it. Somebody else apparently did it already.

    This program previously created the file /dev/vmnet8, and was about to remove
    it. Somebody else apparently did it already.

    You have already setup networking.

    Would you like to skip networking setup and keep your old settings as they are?
    (yes/no) [yes]

    Trying to find a suitable vmnet module for your running kernel.

    None of the pre-built vmnet modules for VMware Workstation is suitable for your
    running kernel. Do you want this program to try to build the vmnet module for
    your system (you need to have a C compiler installed on your system)? [yes]

    Extracting the sources of the vmnet module.

    Building the vmnet module.

    Using 2.6.x kernel build system.
    make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmnet-only’
    make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
    make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
    CC [M] /tmp/vmware-config1/vmnet-only/driver.o
    CC [M] /tmp/vmware-config1/vmnet-only/hub.o
    CC [M] /tmp/vmware-config1/vmnet-only/userif.o
    CC [M] /tmp/vmware-config1/vmnet-only/netif.o
    CC [M] /tmp/vmware-config1/vmnet-only/bridge.o
    CC [M] /tmp/vmware-config1/vmnet-only/filter.o
    CC [M] /tmp/vmware-config1/vmnet-only/procfs.o
    CC [M] /tmp/vmware-config1/vmnet-only/smac_compat.o
    SHIPPED /tmp/vmware-config1/vmnet-only/smac_linux.x386.o
    LD [M] /tmp/vmware-config1/vmnet-only/vmnet.o
    Building modules, stage 2.
    MODPOST 1 modules
    WARNING: could not find /tmp/vmware-config1/vmnet-only/.smac_linux.x386.o.cmd for /tmp/vmware-config1/vmnet-only/smac_linux.x386.o
    CC /tmp/vmware-config1/vmnet-only/vmnet.mod.o
    LD [M] /tmp/vmware-config1/vmnet-only/vmnet.ko
    make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
    cp -f vmnet.ko ./../vmnet.o
    make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmnet-only’
    The module loads perfectly in the running kernel.

    Do you want to install the Eclipse Integrated Virtual Debugger? You must have
    the Eclipse IDE installed. [no]

    Starting VMware services:
    Virtual machine monitor done
    Blocking file system: done
    Virtual ethernet done
    Bridged networking on /dev/vmnet0 done
    Host network detection done
    Host-only networking on /dev/vmnet1 (background) done
    DHCP server on /dev/vmnet1 done
    Host-only networking on /dev/vmnet8 (background) done
    DHCP server on /dev/vmnet8 done
    NAT service on /dev/vmnet8 done

    The configuration of VMware Workstation 6.0.4 build-93057 for Linux for this
    running kernel completed successfully.

    You can now run VMware Workstation by invoking the following command:
    “/usr/bin/vmware”.

    Enjoy,

    –the VMware team

  23. The “very-alpha” patch worked a treat for my VMWare Player 2.0.2 build-59824 install on Fedora Core 8, with all other VMWare-Any patches installed. It also came up first on Google when I pasted in part of the error message.

    Thanks!

  24. I stupidly updated my kernel whilst in the middle of some important work and spent the last 4 hours trying to fix broken video and vmware. This patch work a treat and saved my day – thanks.

  25. 1.): Join the Beta program and download VMware-workstation-e.x.p-91182.i386.tar.gz using WinXP (to save VM HD space).

    2.): Use 7-Zip (or whatever) to open directory VMware-workstation-e.x.p-91182.i386.tar.gz\VMware-workstation-e.x.p-91182.i386.tar\vmware-distrib\lib\isoimages\ and extract linux.iso .

    3.): Use MagicISO (or whatever) to open linux.iso .

    4.): The linux.iso contains this:

    dir “C:\Downloads\linux”

    05/06/2008 03:51 AM 385 manifest.txt
    05/06/2008 03:51 AM 89,979,774 VMwareTools-e.x.p-91182.i386.rpm
    05/06/2008 03:46 AM 89,474,090 VMwareTools-e.x.p-91182.tar.gz
    3 File(s) 179,454,249 bytes

    5.): With the old “broken” tools still installed on kernel 2.6.25 you can (under Debian Lenny) open the “download” (or some other directory) in the Gnome (2.22.2) desktop.

    6.): Select the VMwareTools-e.x.p-91182.* and right-click copy them.

    7.): ALT-TAB and left-click your Gnome desktop and in your “download” (or other tmp directory) click [Edit][Paste] and (eventually) the two files will copy from WinXP to Debian 4.2.4-1 (Lenny) (Linux version 2.6.25).

    8.) To install from the RPM with Debian you can simply type:
    rpm -Uhv /downloads/VMware-workstation-e.x.p-91182.i386.rpm –nodeps

    9.) You could un-tar-gz and run the perl script but I find the RPM easier.

    10.) Don’t know _myself_ if this works but others claim it does — just giving the early info.

  26. The rpm installed OK. There are new programs too. (partial notes below “…” means some lines deleted).

    # vmware-config-tools.pl

    The vmmemctl module loads perfectly into the running kernel.

    The vmhgfs module loads perfectly into the running kernel.

    The vmxnet module loads perfectly into the running kernel.
    update-initramfs: Generating /boot/initrd.img-2.6.21-2-686
    update-initramfs: Generating /boot/initrd.img-2.6.18-4-686

    The vmblock module loads perfectly into the running kernel.

    (and now for an error)

    Building the vmsync module.

    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-config9/vmsync-only’
    make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
    make[1]: Entering directory `/home/root/linux-2.6.25′
    CC [M] /tmp/vmware-config9/vmsync-only/sync.o
    /tmp/vmware-config9/vmsync-only/sync.c: In function ‘VmSyncAddPath’:
    /tmp/vmware-config9/vmsync-only/sync.c:226: error: ‘struct nameidata’ has no member named ‘dentry’
    /tmp/vmware-config9/vmsync-only/sync.c:235: error: implicit declaration of function ‘path_release’
    make[2]: *** [/tmp/vmware-config9/vmsync-only/sync.o] Error 1
    make[1]: *** [_module_/tmp/vmware-config9/vmsync-only] Error 2
    make[1]: Leaving directory `/home/root/linux-2.6.25′
    make: *** [vmsync.ko] Error 2
    make: Leaving directory `/tmp/vmware-config9/vmsync-only’
    Unable to build the vmsync module.

    The file system sync driver (vmsync) is only used to create safe backups of the
    virtual machine. The rest of the software provided by VMware Tools is designed
    to work independently of this feature.


    WARNING: modpost: module vmci.ko uses symbol ‘init_mm’ marked UNUSED
    CC /tmp/vmware-config10/vmci-only/vmci.mod.o
    LD [M] /tmp/vmware-config10/vmci-only/vmci.ko
    make[1]: Leaving directory `/home/root/linux-2.6.25′
    cp -f vmci.ko ./../vmci.o
    make: Leaving directory `/tmp/vmware-config10/vmci-only’
    The vmci module loads perfectly into the running kernel.

    WARNING: “VMCIDatagram_CreateHnd” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIDatagram_DestroyHnd” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIEvent_Subscribe” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCI_DeviceGet” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIMemcpyFromQueueV” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIQueuePair_Detach” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCI_GetContextID” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIDatagram_Send” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIQueuePair_Alloc” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIEvent_Unsubscribe” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    WARNING: “VMCIMemcpyToQueueV” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
    CC /tmp/vmware-config10/vsock-only/vsock.mod.o
    LD [M] /tmp/vmware-config10/vsock-only/vsock.ko
    make[1]: Leaving directory `/home/root/linux-2.6.25′
    cp -f vsock.ko ./../vsock.o
    make: Leaving directory `/tmp/vmware-config10/vsock-only’
    The vsock module loads perfectly into the running kernel.

    (another error)

    Building the vmxnet3 module.

    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-config10/vmxnet3-only’
    make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
    make[1]: Entering directory `/home/root/linux-2.6.25′
    CC [M] /tmp/vmware-config10/vmxnet3-only/vmxnet3.o
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_poll’:
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: error: ‘struct net_device’ has no member named ‘quota’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: warning: type defaults to ‘int’ in declaration of ‘_y’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: error: ‘struct net_device’ has no member named ‘quota’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:233: error: ‘struct net_device’ has no member named ‘quota’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:236: error: too few arguments to function ‘netif_rx_complete’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_intr’:
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:280: error: too few arguments to function ‘netif_rx_schedule’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_activate_dev’:
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:1944: error: implicit declaration of function ‘netif_poll_enable’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_quiesce_dev’:
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:1995: error: implicit declaration of function ‘netif_poll_disable’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_probe_device’:
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:2969: error: ‘struct net_device’ has no member named ‘poll’
    /tmp/vmware-config10/vmxnet3-only/vmxnet3.c:2970: error: ‘struct net_device’ has no member named ‘weight’
    make[2]: *** [/tmp/vmware-config10/vmxnet3-only/vmxnet3.o] Error 1
    make[1]: *** [_module_/tmp/vmware-config10/vmxnet3-only] Error 2
    make[1]: Leaving directory `/home/root/linux-2.6.25′
    make: *** [vmxnet3.ko] Error 2
    make: Leaving directory `/tmp/vmware-config10/vmxnet3-only’
    Unable to build the vmxnet3 module.

    The advanced network device driver (vmxnet3 module) is used only for our
    advanced networking interface. The rest of the software provided by VMware
    Tools is designed to work independently of this feature.

    (wow – this was broken)
    Detected X.org version 7.3.0.
    Please choose one of the following display sizes that X will start with (1 – 29): (many MORE choices!)

    X.Org X Server 1.4.0.90
    Release Date: 5 September 2007
    X Protocol Version 11, Revision 0
    Build Operating System: Linux Debian (xorg-server 2:1.4.1~git20080517-1)
    Current Operating System: Linux bagvapp 2.6.25 #2 SMP PREEMPT Thu Jun 12 09:10:20 PDT 2008 i686
    Build Date: 18 May 2008 01:38:06PM

    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Module Loader present
    Markers: (–) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (++) Log file: “/tmp/vmware-config11/XF86ConfigLog.18941”, Time: Thu Jun 12 20:55:35 2008
    (++) Using config file: “/tmp/vmware-config11/XF86Config.18941”
    (II) Module “ramdac” already built-in
    expected keysym, got XF86KbdLightOnOff: line 70 of pc
    expected keysym, got XF86KbdBrightnessDown: line 71 of pc
    expected keysym, got XF86KbdBrightnessUp: line 72 of pc
    expected keysym, got XF86KbdLightOnOff: line 70 of pc
    expected keysym, got XF86KbdBrightnessDown: line 71 of pc
    expected keysym, got XF86KbdBrightnessUp: line 72 of pc

    X is running fine with the new config file.

    FreeFontPath: FPE “/usr/share/fonts/X11/misc” refcount is 2, should be 1; fixing.
    Starting VMware Tools services in the virtual machine:
    Switching to guest configuration: done
    Guest filesystem driver: done
    Mounting HGFS shares: done
    Guest memory manager: done
    VM communication interface: done
    VM communication interface socket family: done
    Blocking file system: done
    DMA setup: done
    Guest operating system daemon: done

    The configuration of VMware Tools e.x.p build-91182 for Linux for this running
    kernel completed successfully.

    You must restart your X session before any mouse or graphics changes take
    effect.

    You can now run VMware Tools by invoking the following command:
    “/usr/bin/vmware-toolbox” during an X server session.

    To use the vmxnet driver, restart networking using the following commands:
    /etc/init.d/networking stop
    rmmod pcnet32
    rmmod vmxnet
    modprobe vmxnet
    /etc/init.d/networking start

    Enjoy,

    –the VMware team

    ———-

    So it (for the most part) works great – just a bit of fixing.

    Does someone want to try that and post a new patch ?

    Joe

  27. I tried this patch but could not compile vmmon module.
    vmmon: unknown symbol init_mm
    And further model postprocessing also fails.
    Using Debian Etch and 2.6.25.7 vanilla kernel, VMWare Workstation 6.0.2 build-59824

  28. Thanks Peter,

    Installed VMware-player-2.0.4-93057.x86_64 on FC9 x86_64, kernel 2.6.25.6-55.fc9.x86_64 following these instructions. Everything worked perfectly once I installed libXtst.i386

  29. I spoke too soon. Had the same “Version mismatch with vmmon module” problem. Solution that worked for me:

    1. vmware-uninstall.pl
    2. cd vmware-player-distrib
    3 ./vmware-install.pl — choose no in response to question about invoking “/usr/bin/vmware-config.pl”
    4. cd /usr/lib/vmware/modules/source your version of vmware-2.6.25.sh should still be there
    5. ./vmware-2.6.25.sh
    7. vmware-config.pl
    8. vmware-config.pl run a second time to get the correct version in

    after that virtual machine opens as expected.

    Peter this page is a great resource

Comments are closed.