VMware Communities
voyager7
Contributor
Contributor

Modules will not compile on Debian Testing with Workstation 16.2.4

Hi,

I've recently converted over to Debian Testing and getting VMware Workstation functional is the one remaining issue that I know about.

 

I'm using Workstation 16.2.4 build-20089737 and have tried with module code from mkubecek/vmware-host-modules    as well as the module code from the package.

 

I currently have Kernel 5.18.5 and 5.18.14 installed and see the same errors on both. GCC --version is Debian 11.3.0-5

 

When I try to compile the modules, I'm getting as error indicating that stddef.h and stdarg.h so not exist.

 

The files do exist on the system.

/usr/src/linux-headers-5.18.0-2-common/include/linux/stdarg.h  <<-- 5.18.5
/usr/src/linux-headers-5.18.0-3-common/include/linux/stdarg.h  <<-- 5.18.14

I've tried over riding the include search path with:

export CPATH=/usr/src/linux-headers-5.18.0-2-common/include/linux/ or -3 as appropriate.

 

I'm getting the following types of errors:

/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c: In function ‘isVAReadable’:
/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c:2363:4: error: unknown type name ‘mm_segment_t’
2363 |    mm_segment_t old_fs;
     |    ^~~~~~~~~~~~
/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c:2365:13: error: implicit declaration of function ‘get_fs’; did you mean ‘sget_fc’? [-Werror=implicit-function-declaration]
2365 |    old_fs = get_fs();
     |             ^~~~~~
     |             sget_fc
/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c:2366:4: error: implicit declaration of function ‘set_fs’; did you mean ‘sget_fc’? [-Werror=implicit-function-declaration]
2366 |    set_fs(KERNEL_DS);
     |    ^~~~~~
     |    sget_fc
/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c:2366:11: error: ‘KERNEL_DS’ undeclared (first use in this function); did you mean ‘KERNEL_2_1’?
2366 |    set_fs(KERNEL_DS);
     |           ^~~~~~~~~
     |           KERNEL_2_1
/home/terry/src/vmware-host-modules-16.2.4/vmware-host-modules-16.2.4/vmmon-only/linux/hostif.c:2366:11: note: each undeclared identifier is reported only once for each function it appears in

I don't understand the code well enough to fix this...

Any suggestions please?

Regards,

Terry

Reply
0 Kudos
2 Replies
imieagle
Contributor
Contributor

check the end of this page - https://www.aldeid.com/wiki/VMware
i adjusted the workstation version and followed the steps mentioned , and it works

$ got clone https://github.com/mkubecek/vmware-host-modules/archive/workstation-16.2.4.tar.gz
$ tar xzvf vmware-host-modules-workstation-16.2.3.tar.gz
$ cd vmware-host-modules-workstation-16.2.3/
$ make
$ sudo make install
$ sudo systemctl restart vmware.service

 

Reply
0 Kudos
voyager7
Contributor
Contributor

Thanks for the pointer... That is the process that I've been using. I didn't think that the source could have been updated after it was published.... Error on my part.

Reply
0 Kudos