[20.04] VMware Workstation/Player fails to build kernel modules VMMON & VMNET

VMware Workstation/Player will fail to build kernel modules VMMON & VMNET

Newer kernel versions have issues with building kernel modules VMMON and VMNET. This will/can occur with the 5.4.x kernel series that are included in the 20.04 Focal Fossa release.

Below is a work-around for this issue derived from the great work being maintained by Michael Kubecek.

You will need to download the appropriate file based on what version you have installed, this example is based on 15.5.1

Download the replacement files:

wget https://github.com/mkubecek/vmware-host-modules/archive/workstation-15.5.1.tar.gz

Extract the files:

tar -xzf workstation-15.5.1.tar.gz

cd into directory:

cd vmware-host-modules-workstation-15.5.1/

Create tar files of the modules:

tar -cf vmmon.tar vmmon-only
tar -cf vmnet.tar vmnet-only

Copy files to /usr/lib/vmware.modules.source (elevated privileges needed):

sudo cp -v vmmon.tar vmnet.tar /usr/lib/vmware/modules/source/

Install modules (elevated privileges needed):

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

You should get an output similar to the following:

Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
make: Entering directory '/tmp/modconfig-ySDgLm/vmmon-only'
Using kernel build system.
/usr/bin/make -C /lib/modules/5.4.0-14-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory '/usr/src/linux-headers-5.4.0-14-generic'
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/statVarsVmmon.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/sharedAreaVmmon.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/vmcore/moduleloop.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/bootstrap/monLoaderVmmon.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/bootstrap/monLoader.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/bootstrap/vmmblob.o
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/bootstrap/bootstrap.o
  LD [M]  /tmp/modconfig-ySDgLm/vmmon-only/vmmon.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC [M]  /tmp/modconfig-ySDgLm/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-ySDgLm/vmmon-only/vmmon.ko
make[1]: Leaving directory '/usr/src/linux-headers-5.4.0-14-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory '/tmp/modconfig-ySDgLm/vmmon-only'
make[1]: 'postbuild' is up to date.
make[1]: Leaving directory '/tmp/modconfig-ySDgLm/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory '/tmp/modconfig-ySDgLm/vmmon-only'
make: Entering directory '/tmp/modconfig-ySDgLm/vmnet-only'
Using kernel build system.
/usr/bin/make -C /lib/modules/5.4.0-14-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory '/usr/src/linux-headers-5.4.0-14-generic'
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-ySDgLm/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC [M]  /tmp/modconfig-ySDgLm/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-ySDgLm/vmnet-only/vmnet.ko
make[1]: Leaving directory '/usr/src/linux-headers-5.4.0-14-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory '/tmp/modconfig-ySDgLm/vmnet-only'
make[1]: 'postbuild' is up to date.
make[1]: Leaving directory '/tmp/modconfig-ySDgLm/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory '/tmp/modconfig-ySDgLm/vmnet-only'
Starting VMware services:
   Virtual machine monitor                                             done
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                    done
   VMware Authentication Daemon                                        done
   Shared Memory Available                                             done

At this point you should be able to run VMware Workstation/Player.

See more at:

13 Likes

Very Very Thanks. I was fed up with this erro from last one week. Today I got your website and tried the resolution,it worked. Thanks a lot.

thank you this was very helpful

That was very helpful

i was trying to find a solution, but non worked well except yours, thank you very much , you are the man :slight_smile:

1 Like

Thank you very much!!!!

2 Likes

Encountered this when trying to do something "real quick" just to find out vmware surprise upgrade/break... -_-

Unfortunately, my install (the last step) failed - anything obvious?

(venv) ➜  vmware-host-modules-workstation-15.5.1 sudo vmware-modconfig --console --install-all
[AppLoader] GLib does not have GSettings support.
Stopping VMware services:
   VMware Authentication Daemon                                        done
   Virtual machine monitor                                             done
make: Entering directory '/tmp/modconfig-QnmLzM/vmmon-only'
Using kernel build system.
/usr/bin/make -C /lib/modules/5.11.0-25-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory '/usr/src/linux-headers-5.11.0-25-generic'
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/statVarsVmmon.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/sharedAreaVmmon.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/vmcore/moduleloop.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/bootstrap/monLoaderVmmon.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/bootstrap/monLoader.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/bootstrap/vmmblob.o
  CC [M]  /tmp/modconfig-QnmLzM/vmmon-only/bootstrap/bootstrap.o
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘HostIF_EstimateLockedPageLimit’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:1637:42: error: ‘NR_SLAB_UNRECLAIMABLE’ undeclared (first use in this function); did you mean ‘NR_SLAB_UNRECLAIMABLE_B’?
 1637 |    lockedPages += global_node_page_state(NR_SLAB_UNRECLAIMABLE);
      |                                          ^~~~~~~~~~~~~~~~~~~~~
      |                                          NR_SLAB_UNRECLAIMABLE_B
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:1637:42: note: each undeclared identifier is reported only once for each function it appears in
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘isVAReadable’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2293:13: error: implicit declaration of function ‘get_fs’; did you mean ‘sget_fc’? [-Werror=implicit-function-declaration]
 2293 |    old_fs = get_fs();
      |             ^~~~~~
      |             sget_fc
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2293:13: error: incompatible types when assigning to type ‘mm_segment_t’ {aka ‘struct <anonymous>’} from type ‘int’
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2294:4: error: implicit declaration of function ‘set_fs’; did you mean ‘sget_fc’? [-Werror=implicit-function-declaration]
 2294 |    set_fs(KERNEL_DS);
      |    ^~~~~~
      |    sget_fc
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2294:11: error: ‘KERNEL_DS’ undeclared (first use in this function); did you mean ‘KERNFS_NS’?
 2294 |    set_fs(KERNEL_DS);
      |           ^~~~~~~~~
      |           KERNFS_NS
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘HostIF_APICInit’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2416:23: error: ‘SPURIOUS_APIC_VECTOR’ undeclared (first use in this function)
 2416 |    monitorIPIVector = SPURIOUS_APIC_VECTOR;
      |                       ^~~~~~~~~~~~~~~~~~~~
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘HostIF_SemaphoreWait’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2570:13: error: incompatible types when assigning to type ‘mm_segment_t’ {aka ‘struct <anonymous>’} from type ‘int’
 2570 |    old_fs = get_fs();
      |             ^~~~~~
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2571:11: error: ‘KERNEL_DS’ undeclared (first use in this function); did you mean ‘KERNFS_NS’?
 2571 |    set_fs(KERNEL_DS);
      |           ^~~~~~~~~
      |           KERNFS_NS
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘HostIF_SemaphoreSignal’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2703:13: error: incompatible types when assigning to type ‘mm_segment_t’ {aka ‘struct <anonymous>’} from type ‘int’
 2703 |    old_fs = get_fs();
      |             ^~~~~~
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:2704:11: error: ‘KERNEL_DS’ undeclared (first use in this function); did you mean ‘KERNFS_NS’?
 2704 |    set_fs(KERNEL_DS);
      |           ^~~~~~~~~
      |           KERNFS_NS
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c: In function ‘HostIFFastClockThread’:
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:3269:12: error: incompatible types when assigning to type ‘mm_segment_t’ {aka ‘struct <anonymous>’} from type ‘int’
 3269 |    oldFS = get_fs();
      |            ^~~~~~
/tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.c:3270:11: error: ‘KERNEL_DS’ undeclared (first use in this function); did you mean ‘KERNFS_NS’?
 3270 |    set_fs(KERNEL_DS);
      |           ^~~~~~~~~
      |           KERNFS_NS
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:287: /tmp/modconfig-QnmLzM/vmmon-only/linux/hostif.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1848: /tmp/modconfig-QnmLzM/vmmon-only] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.0-25-generic'
make: *** [Makefile:117: vmmon.ko] Error 2
make: Leaving directory '/tmp/modconfig-QnmLzM/vmmon-only'
make: Entering directory '/tmp/modconfig-QnmLzM/vmnet-only'
Using kernel build system.
/usr/bin/make -C /lib/modules/5.11.0-25-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory '/usr/src/linux-headers-5.11.0-25-generic'
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-QnmLzM/vmnet-only/vnetUserListener.o
/tmp/modconfig-QnmLzM/vmnet-only/userif.c: In function ‘VNetCsumCopyDatagram’:
/tmp/modconfig-QnmLzM/vmnet-only/userif.c:582:11: error: too many arguments to function ‘csum_and_copy_to_user’
  582 |    csum = csum_and_copy_to_user(skb->data + offset, curr, len, 0, &err);
      |           ^~~~~~~~~~~~~~~~~~~~~
In file included from ./arch/x86/include/asm/checksum.h:8,
                 from ./include/net/checksum.h:22,
                 from ./include/linux/skbuff.h:28,
                 from ./include/linux/if_ether.h:19,
                 from /tmp/modconfig-QnmLzM/vmnet-only/userif.c:27:
./arch/x86/include/asm/checksum_64.h:136:15: note: declared here
  136 | extern __wsum csum_and_copy_to_user(const void *src, void __user *dst, int len);
      |               ^~~~~~~~~~~~~~~~~~~~~
/tmp/modconfig-QnmLzM/vmnet-only/userif.c:596:13: error: too many arguments to function ‘csum_and_copy_to_user’
  596 |   tmpCsum = csum_and_copy_to_user(vaddr + compat_skb_frag_off(frag),
      |             ^~~~~~~~~~~~~~~~~~~~~
In file included from ./arch/x86/include/asm/checksum.h:8,
                 from ./include/net/checksum.h:22,
                 from ./include/linux/skbuff.h:28,
                 from ./include/linux/if_ether.h:19,
                 from /tmp/modconfig-QnmLzM/vmnet-only/userif.c:27:
./arch/x86/include/asm/checksum_64.h:136:15: note: declared here
  136 | extern __wsum csum_and_copy_to_user(const void *src, void __user *dst, int len);
      |               ^~~~~~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:287: /tmp/modconfig-QnmLzM/vmnet-only/userif.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1848: /tmp/modconfig-QnmLzM/vmnet-only] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.11.0-25-generic'
make: *** [Makefile:117: vmnet.ko] Error 2
make: Leaving directory '/tmp/modconfig-QnmLzM/vmnet-only'
Unable to install all modules.  See log for details.

Not a Mate User currently (on Ubuntu running Gnome 42 beta), but this was kicking my tail. I found a few other links explaining about the EFI booting and how that can cause problems, etc. then stumbled onto this and it worked perfectly. I know its a few years old but I just updated the directions with the current release numbers (16.2.1) and it worked like a champ. Thank you SO much for taking the time to document this work around!

It's broken again with 22.04 - same failure to build kernel modules.

For VMware Player 16.2.3, you want

https://github.com/mkubecek/vmware-host-modules/archive/player-16.2.3.tar.gz

Then just follow the instructions above.

3 Likes

I Faced the same issue on ubuntu 22.04
I couldn't resolve the issue until i found this post
Thank you

I had no issues with VMWare Workstation (licensed for fee) with 20.04LTS. With 22.04LTS, I had the above issue after an upgrade in place from 20.04LTS (however, there is a 802.11 firmware issue with the hardware on my machine, hardware that was fully functional under 20.04LTS including kernel updates from Ubuntu for 20.04LTS). However, after following the steps creating the two tar files and then copying these into the given subdirectory in the vmware "building" tree, simply activating VMware workstation started VMWare's kernel module build via the VMware "GUI". After several minutes (time presumably dependent upon the physical hardware), the VMware virtual machine GUI starts and allows one to start, create, etc., virtual machines (in my case MS Win 10, soon to be MS Win 11). Evidently, despite being licensed for fee, VMWare has not fixed this issue -- presumably will do so with the next major for-fee "upgrade" release.

thank you very much!! been struggling with this for just too long

Wooo! Thank you very much. Was trying to get Workstation Pro 16.2.3-19376536 to install in Linux Pop_Os 22.04 and was having a module error when starting the Workstation for the first time. After following your steps and using my version number, 16.2.3, instead of what you have I was able to finally get the Workstation open with no errors! I tried many other solutions and it seems like some people even on the VMware webpage are clueless with this issue. I am glad I stumbled on this post.

1 Like

if it still doesn't work according to the solution, you can check whether the "Secure Boot" option has been set to "Disable" on the host's BIOS. It works for me after changing that.

Thanks a lot. This worked for me.

Is the first time i have an issue of this type with VMWare Player, currently i'm using the version 16.2.1 in Ubuntu 20.04.

I had already notice after apply an update of Linux kernel header modules the next time i start VMWare need to install the modules again, but this time didn't work at all.

I was seaching in Vmware forums but i found the solution here, i will be careful about install updates in the future, althought i think is error on VMWare.

Hello, it does not work for me on ubuntu

[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# sudo vmware-modconfig --console --install-all~
[AppLoader] Use shipped Linux kernel AIO access library.
An up-to-date "libaio" or "libaio1" package from your system is preferred.
[AppLoader] GLib does not have GSettings support.
/usr/lib/vmware/bin/vmware-modconfig-console: unrecognized option '--install-all~'
Received option outside of allowed bounds.  Option was 63

Must use a valid mode.  Use one of:
	--build-mod [-k utsRelease] <moduleName> [<pathToGcc>  [<pathToHeaders> [destDir [destName]]]]
	--configured-mods-installed [-k utsRelease]
	--generate-prop-file 
	--get-gcc 
	--get-kernel-headers [-k utsRelease]
	--install-all [-k utsRelease] [destDir]
	--install-pbm <moduleName> [destDir (in modules directory) [destName]]
	--pbm-available <moduleName>
	--validate-gcc <pathToGcc>
	--validate-kernel-headers [-k utsRelease] <pathToHeaders>
	--get-pbm-candidate 
	--install-status 
[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# vmware --version
[AppLoader] Use shipped Linux kernel AIO access library.
An up-to-date "libaio" or "libaio1" package from your system is preferred.
VMware Workstation 16.2.4 build-20089737
[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# sudo apt-get update
Atteint :1 http://archive.ubuntu.com/ubuntu jammy InRelease
Réception de :2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]
Réception de :3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99,8 kB]
Réception de :4 http://archive.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
324 ko réceptionnés en 1s (369 ko/s)
Lecture des listes de paquets... Fait
[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# tar -xzf workstation-16.2.4.tar.gz
tar (child): workstation-16.2.4.tar.gz : open impossible: Aucun fichier ou dossier de ce type
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# wget https://github.com/mkubecek/vmware-host-modules/archive/workstation-16.2.4.tar.gz
--2022-09-09 00:35:00--  https://github.com/mkubecek/vmware-host-modules/archive/workstation-16.2.4.tar.gz
Résolution de github.com (github.com)… 140.82.121.3
Connexion à github.com (github.com)|140.82.121.3|:443… connecté.
requête HTTP transmise, en attente de la réponse… 302 Found
Emplacement : https://codeload.github.com/mkubecek/vmware-host-modules/tar.gz/refs/heads/workstation-16.2.4 [suivant]
--2022-09-09 00:35:01--  https://codeload.github.com/mkubecek/vmware-host-modules/tar.gz/refs/heads/workstation-16.2.4
Résolution de codeload.github.com (codeload.github.com)… 140.82.121.9
Connexion à codeload.github.com (codeload.github.com)|140.82.121.9|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : non indiqué [application/x-gzip]
Enregistre : ‘workstation-16.2.4.tar.gz’

workstation-16.2.4.tar.gz     [ <=>                               ] 465,45K  --.-KB/s    ds 0,1s    

2022-09-09 00:35:01 (4,40 MB/s) - ‘workstation-16.2.4.tar.gz’ enregistré [476616]

[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# tar -xzf workstation-16.2.4.tar.gz
[email protected]:/home/nicolas/vmware-host-modules-workstation-15.5.1# cd vmware-host-modules-workstation-16.2.4/
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# tar -cf vmmon.tar vmmon-only
tar -cf vmnet.tar vmnet-only
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# sudo cp -v vmmon.tar vmnet.tar /usr/lib/vmware/modules/source/
'vmmon.tar' -> '/usr/lib/vmware/modules/source/vmmon.tar'
'vmnet.tar' -> '/usr/lib/vmware/modules/source/vmnet.tar'
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# sudo su
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# sudo vmware-modconfig --console --install-all
[AppLoader] Use shipped Linux kernel AIO access library.
An up-to-date "libaio" or "libaio1" package from your system is preferred.
[AppLoader] GLib does not have GSettings support.
Stopping VMware services:
   VMware Authentication Daemon                                        done
   Virtual machine monitor                                             done
make : on entre dans le répertoire « /tmp/modconfig-Nkb5x2/vmmon-only »
Using kernel build system.
/usr/bin/make -C /lib/modules/5.15.0-47-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.15.0-47-generic »
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/crosspage.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/moduleloop.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/sharedAreaVmmon.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/statVarsVmmon.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/bootstrap/bootstrap.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/bootstrap/monLoader.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/bootstrap/monLoaderVmmon.o
/tmp/modconfig-Nkb5x2/vmmon-only/common/crosspage.o: warning: objtool: CrossPage_CodePage()+0x1f7: 'naked' return found in RETHUNK build
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/bootstrap/vmmblob.o
  LD [M]  /tmp/modconfig-Nkb5x2/vmmon-only/vmmon.o
  MODPOST /tmp/modconfig-Nkb5x2/vmmon-only/Module.symvers
  CC [M]  /tmp/modconfig-Nkb5x2/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-Nkb5x2/vmmon-only/vmmon.ko
  BTF [M] /tmp/modconfig-Nkb5x2/vmmon-only/vmmon.ko
Skipping BTF generation for /tmp/modconfig-Nkb5x2/vmmon-only/vmmon.ko due to unavailability of vmlinux
make[1] : on quitte le répertoire « /usr/src/linux-headers-5.15.0-47-generic »
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1] : on entre dans le répertoire « /tmp/modconfig-Nkb5x2/vmmon-only »
make[1]: « postbuild » est à jour.
make[1] : on quitte le répertoire « /tmp/modconfig-Nkb5x2/vmmon-only »
cp -f vmmon.ko ./../vmmon.o
make : on quitte le répertoire « /tmp/modconfig-Nkb5x2/vmmon-only »
make : on entre dans le répertoire « /tmp/modconfig-Nkb5x2/vmnet-only »
Using kernel build system.
/usr/bin/make -C /lib/modules/5.15.0-47-generic/build/include/.. M=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1] : on entre dans le répertoire « /usr/src/linux-headers-5.15.0-47-generic »
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-Nkb5x2/vmnet-only/vmnet.o
  MODPOST /tmp/modconfig-Nkb5x2/vmnet-only/Module.symvers
  CC [M]  /tmp/modconfig-Nkb5x2/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-Nkb5x2/vmnet-only/vmnet.ko
  BTF [M] /tmp/modconfig-Nkb5x2/vmnet-only/vmnet.ko
Skipping BTF generation for /tmp/modconfig-Nkb5x2/vmnet-only/vmnet.ko due to unavailability of vmlinux
make[1] : on quitte le répertoire « /usr/src/linux-headers-5.15.0-47-generic »
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1] : on entre dans le répertoire « /tmp/modconfig-Nkb5x2/vmnet-only »
make[1]: « postbuild » est à jour.
make[1] : on quitte le répertoire « /tmp/modconfig-Nkb5x2/vmnet-only »
cp -f vmnet.ko ./../vmnet.o
make : on quitte le répertoire « /tmp/modconfig-Nkb5x2/vmnet-only »
Starting VMware services:
   Virtual machine monitor                                            failed
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done
Unable to start services
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# sudo apt-get update
Atteint :1 http://archive.ubuntu.com/ubuntu jammy InRelease
Réception de :2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]
Réception de :3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99,8 kB]
Réception de :4 http://archive.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
324 ko réceptionnés en 1s (375 ko/s)
Lecture des listes de paquets... Fait
[email protected]:/home/nicolas/.local/share/Trash/files/vmware-host-modules-workstation-15.5.1/vmware-host-modules-workstation-16.2.4# 

Thank you so much for the vmmon and vmnet source, it's worked

Much appreciated! Just did a release upgrade to Ubuntu 22.04 and this solved it. Found the 16.2.4 version I needed and followed these instructions and it works perfectly.

1 Like

Welcome to the community!