VMWare Workstation Pro 12 on Ubuntu 16.04 cannot compile vmmon

17,159

I had the same issue. Here is the fix Go to the folder

cd /usr/lib/vmware/modules/source

Untar the file vmmon.tar using (you might need su/sudo to do these)

tar xf vmmon.tar

Edit the file ./vmmon-only/linux/driver.c

nano ./vmmon-only/linux/driver.c

Apply these changes, courtesy of https://forums.gentoo.org/viewtopic-p-7841306.html#7841306 At around line 400, delete lines starting with a - and add ones starting with a + (don't actually put the +). There's a way to do this using the patch command but whatever. If you know how to read patch files you'll see the user on that form included another change to another file but it all works without me carrying that out.

#ifdef VMX86_DEVEL 
    unregister_chrdev(linuxState.major, linuxState.deviceName); 
 #else 
-   if (misc_deregister(&linuxState.misc)) { 
-      Warning("Module %s: error unregistering\n", linuxState.deviceName); 
-   } 
+   misc_deregister(&linuxState.misc); 

Backup the original

mv vmmon.tar vmmon.tarbackup

Retar the files

tar cf vmmon.tar ./vmmon-only

I'm a little iffy from this point on, since I did a few things and didn't test after each step. So both of these might not be strictly necessary. Recompile libs using the driver.c you just edited

sudo vmware-modconfig --console --install-all

Run VMWare, telling it to use the libs you just compiled

sudo VMWARE_USE_SHIPPED_LIBS=yes vmwarex:
Share:
17,159

Related videos on Youtube

uncanny_valley
Author by

uncanny_valley

Updated on September 18, 2022

Comments

  • uncanny_valley
    uncanny_valley over 1 year

    I've installed the VMware bundle without issues in my Ubuntu 16.04 (dual booth). When I try to run it and it tries compiling, it generates the following log, it can't compile vmmon:

    ...
    2016-08-15T16:13:39.909+02:00| vthread-4| I125: Successfully extracted the vmmon source.
    2016-08-15T16:13:39.910+02:00| vthread-4| I125: Building module with command "/usr/bin/make -j8 -C /tmp/modconfig-SUMBLV/vmmon-only auto-build HEADER_DIR=/lib/modules/4.4.0-34-generic/build/include CC=/usr/bin/gcc IS_GCC_3=no"
    2016-08-15T16:13:40.934+02:00| vthread-4| W115: Failed to build vmmon.  Failed to execute the build command.
    

    I've started troubleshooting the problem by searching on the web and I've changed the get_user_pages method name to get_user_pages_remote both in vmnet.tar and vmmon.tar in their directory, but it hasn't solved the problem, vmmon still won't compile.

    When starting VMware with gksudo via the terminal I get the following error messages:

    Starting VMware services:
       Virtual machine monitor                                            failed
       Virtual machine communication interface                             done
       VM communication interface socket family                            done
       Blocking file system                                                done
       Virtual ethernet                                                    done
       VMware Authentication Daemon                                        done
    

    Thinking it would've been a graphic card related issue I've successfully installed the NVidia drivers for my graphic card, disabled Secure Boot by using the MOK management utility when booting up after having installed them. I've also disabled Secure Boot in my BIOS, it's an Asus laptop.

    I forgot to install the VMWare bundle using gksudo, I thought it was unlikely the problem source, but I'll point this out just for accuracy sake.

    The kernel version is 4.4.0-34-generic. I've read it should be up to the VMWare team to patch this kernel version, is there a quick fix to solve this or should I shoot for Virtualbox and get it over with?

    I have some virtual machine images I'd like to import from somewhere else.

    Thanks for reading.

  • sgiri
    sgiri over 7 years
    Thank you. This really worked for me. The last command didn't work. But, normal vmware command from terminal helped me run vmware workstation. This answer deserves accepted. 1 upvote by me.
  • uncanny_valley
    uncanny_valley over 7 years
    Sorry for the delay but I had already installed and worked out all of the quirks of VirtualBox in the meanwhile, I also didn't need to install VMWare or just install it to check if your answer was correct. Since it's solved the issue for sgiri, I'll accept it as the correct answer. Thanks for taking the time to answer it in the first place, have a good one.
  • Nicolas Raoul
    Nicolas Raoul almost 6 years
    I just installed VMware-Player-14.0.0-6661328.x86_64.bundle on 18.04, and in vmmon-only/linux/driver.c the patch above is already applied, in other words there is no if/Warning. But still, I get Failed to build vmmon.
  • Pranasas
    Pranasas almost 6 years
    @NicolasRaoul Did you solve your problem?
  • Nicolas Raoul
    Nicolas Raoul almost 6 years
    @Pranasas: Yes, please see askubuntu.com/questions/1041912/…