VMware 9.0.1 – Not so Clever, After all..

Just updated the kernel on my test system to 3.7-rc6, and discovered – sadly – that the standard VMware (re)compile/install script – vmware-modconfig – still doesn’t find the ‘relocated’ version.h in the 3.7 series kernels.

So, although the VMware new-install/update script (VMware-Workstation-Full-9.0.1-894247.x86_64.bundle, in this case), does recognise the 3.7 change, the (re)compilation script doesn’t..

# vmware-modconfig –console –install-all
Failed to setup build environment.

So, you still have to do:

# ln -s /usr/src/linux-3.7-rc6/include/generated/uapi/linux/version.h /usr/src/linux-3.7-rc6/include/linux/version.h

– and then everything works OK..

The difficulty here, is that vmware-modconfig is just a ‘wrapper’, which then runs the binary which handles the re-compile process, and it is that binary that – ideally – needs to be fixed!    When I have more time, I will see if there is a hack to modify the ‘wrapper’ script, but for now, the simple ‘softlink’ shown above will do the job..

Robert Gadsdon.  November 18th, 2012.


VMware 9.0.1 – Not so Clever, After all.. — 11 Comments

      • Thanks! Looks like upgrading my kernel to 3.6.7 and issuing –ignore-errors to the 9.0.1 install worked nicely!

        Now my next issue is that USB doesn’t look to exist anymore… inside the OS it does, but to VMWare no more! If I plug a USB device in, nothing happens…

  1. I can’t find version.h in the location indicated by you on 3.7rc6!
    “ln: failed to create symbolic link `/usr/src/3.7.0-030700rc6-generic/include/linux/version.h’: No such file or directory”

    • The location and softlink info is for the standard kernel.org source.. You might find your relocated version.h at
      /usr/src/3.7.0-030700rc6/include/generated/uapi/linux/version.h.. And.. if you get the softlink parameters the wrong way around, it will fail with a ‘file not found’ error..
      Hope that helps..

  2. If you’re using Arch Linux, ln -s /lib/modules/3.7.0-1-ck/build/include/generated/uapi/linux/version.h /lib/modules/3.7.0-1-ck/build/include/linux/ (I’m using ck kernel, replace 3.7.0-1-ck with your kernel)

  3. And with debian it’s
    ln -s /usr/src/linux-headers-3.7-trunk-amd64/include/generated/uapi/linux/version.h /usr/src/linux-headers-3.7-trunk-amd64/include/linux/version.h

Leave a Reply

Your email address will not be published. Required fields are marked *