After upgrading to the 5.16 kernel on my main machine:
uname -a :
5.16.0-arch1-1 #1 SMP PREEMPT Mon, 10 Jan 2022 20:11:47 +0000 x86_64 GNU/Linux
I found that recompiling the vmmon module fails with
/tmp/modconfig-lXl0QD/vmnet-only/vm_assert.h:43:10: fatal error: stdarg.h: No such file or directory
43 | #include <stdarg.h>
There are more errors, all based on not finding the stdarg.h header file. Now, the linux-headers have been installed, and compiling on the previous kernel worked ok.
When starting workstation pro (vmware --version: VMware Workstation 16.2.1 build-18811642) it offers to recompile the modules
Which then fails with:
So this looks like more customers may run into as the 5.16 becomes more current.
Rebuilding on the commandline with:
vmware-modconfig --console --install-al
Results in the same error, it looks like the process does not find the linux headers anymore. The header missing is in the source directory
cd /usr/src/linux/include
find . -name stdarg.h -type f
./linux/stdarg.h
Which leads me to believe that the Makefile does not look into that directory when building. Can somebody point me to where the kernel headers path for compiling is set?
When every other method failed, this one worked for me! Workstation Pro 16.2.3, kernel 6.3.12, PCLinuxOS.
Thank you!
I cannot believe that one major release later, and now on Kernel 6.5.4, this is STILL the go-to solution.
I just had to use it when I got a kernel upgrade and it wouldn't compile the modules. Tried upgrading to VMWare 17.0.2 from 17.0.1 to no avail. Used https://github.com/mkubecek/vmware-host-modules and checked out the 17.0.2 branch, and BAM! it worked.
I'm running Pop!OS 22.04
Once again, this should NOT be the solution, but IT IS!
-Hugh Ferguson
make produces error:
In file included from /home/will/Downloads/vmware-host-modules-workstation-16.2.4/vmmon-only/common/vmx86.c:56:
./arch/x86/include/asm/timex.h: In function ‘random_get_entropy’:
./arch/x86/include/asm/timex.h:12:24: error: implicit declaration of function ‘random_get_entropy_fallback’; did you mean ‘random_get_entropy’? [-Werror=implicit-function-declaration]
12 | return random_get_entropy_fallback();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
| random_get_entropy