LINUX.ORG.RU

Не компилируются модули ядра VMware

 , , ,


0

2

РЕШЕНО!!! Смотрите внизу моего профиля.

Здравствуйте. Столкнулся с проблемой: VMware не может скомпилировать необходимые ей модули vmmon и vmnet. Вот лог:

2024-07-17T14:00:50.752Z In(05) host-16579 /tmp/modconfig-FuzVV4/vmnet-only/bridge.c:1416:11: error: implicit declaration of function ‘skb_gso_segment’; did you mean ‘tcp_gso_segment’? [-Werror=implicit-function-declaration]
2024-07-17T14:00:50.752Z In(05) host-16579     segs = skb_gso_segment(skb, 0);
2024-07-17T14:00:50.752Z In(05) host-16579            ^~~~~~~~~~~~~~~
2024-07-17T14:00:50.752Z In(05) host-16579            tcp_gso_segment
2024-07-17T14:00:50.752Z In(05) host-16579 /tmp/modconfig-FuzVV4/vmnet-only/bridge.c:1416:9: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
2024-07-17T14:00:50.752Z In(05) host-16579     segs = skb_gso_segment(skb, 0);
2024-07-17T14:00:50.752Z In(05) host-16579          ^
2024-07-17T14:00:50.752Z In(05) host-16579 cc1: some warnings being treated as errors
2024-07-17T14:00:50.752Z In(05) host-16579 make[2]: *** [/usr/src/linux-6.4.0-150600.23.7/scripts/Makefile.build:252: /tmp/modconfig-FuzVV4/vmnet-only/bridge.o] Ошибка 1
2024-07-17T14:00:50.752Z In(05) host-16579 make[2]: *** Ожидание завершения заданий…
2024-07-17T14:00:50.752Z In(05) host-16579 make[1]: *** [../../../linux-6.4.0-150600.23.7/Makefile:2066: /tmp/modconfig-FuzVV4/vmnet-only] Ошибка 2
2024-07-17T14:00:50.752Z In(05) host-16579 make: *** [Makefile:117: vmnet.ko] Ошибка 2
2024-07-17T14:00:50.752Z In(05) host-16579 Unable to install all modules.  See log for details.
2024-07-17T14:00:50.752Z In(05) host-16579 

Пробовал также этот патч по первым двум методам из файла INSTALL в корне репозитория, но там есть только версия 17.5.1, а у меня 17.5.2. Лог:

/home/mrcookie/vmware-patch/vmware-host-modules-workstation-17.5.1/vmnet-only/bridge.c:1418:11: error: implicit declaration of function ‘skb_gso_segment’; did you mean ‘tcp_gso_segment’? [-Werror=implicit-function-declaration]
    segs = skb_gso_segment(skb, 0);
           ^~~~~~~~~~~~~~~
           tcp_gso_segment
/home/mrcookie/vmware-patch/vmware-host-modules-workstation-17.5.1/vmnet-only/bridge.c:1418:9: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
    segs = skb_gso_segment(skb, 0);
         ^
cc1: some warnings being treated as errors
make[3]: *** [/usr/src/linux-6.4.0-150600.23.7/scripts/Makefile.build:252: /home/mrcookie/vmware-patch/vmware-host-modules-workstation-17.5.1/vmnet-only/bridge.o] Ошибка 1
make[2]: *** [../../../linux-6.4.0-150600.23.7/Makefile:2066: /home/mrcookie/vmware-patch/vmware-host-modules-workstation-17.5.1/vmnet-only] Ошибка 2
make[2]: выход из каталога «/usr/src/linux-6.4.0-150600.23.7-obj/x86_64/default»
make[1]: *** [Makefile:117: vmnet.ko] Ошибка 2
make[1]: выход из каталога «/home/mrcookie/vmware-patch/vmware-host-modules-workstation-17.5.1/vmnet-only»
make: *** [Makefile:21: vmnet-only] Ошибка 2

ОС: openSUSE Leap 15.6 с ядром 6.4.0-150600.23.7-default.

★★★

Последнее исправление: MrCookie (всего исправлений: 2)

Прочитав заголовок, сильно удивился

Но похоже ты говоришь про установку vmware tools (и с ними модулей для ядра гостевой ОС)

99% что оно тебе не надо. Поищи в своем дистрибутиве open-vm-tools (поиск по vmware tools их должен найти). Они давно идут вместо vmware tools, собирать ничего не нужно

router ★★★★★
()
Последнее исправление: router (всего исправлений: 3)

У тебя наверно версия ядра не та для которой модули писались. И чтобы исправить эту проблему - тебе надо учиться разработке для ядра, просто что-то где-то бездумно сменить скорее всего не выйдет. И да, если это vmware tools то вместо них можно open-vm-tools поставить.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
cd /usr/lib/vmware/modules/source
git clone https://github.com/mkubecek/vmware-host-modules
cd vmware-host-modules
git checkout workstation-17.5.1
make
tar -cf vmnet.tar vmnet-only
tar -cf vmmon.tar vmmon-only
mv vmnet.tar /usr/lib/vmware/modules/source/
mv vmmon.tar /usr/lib/vmware/modules/source/
vmware-modconfig --console --install-all
utanho ★★★★★
()