Ich war so mutig, und habe gestern ein Upgrade von OpenSuSE 11.3 auf OpenSuSE 11.4 gewagt. Soweit hat alles funktioniert und da ich auf dem Desktop eher ein Freund aktueller Software bin, habe ich auch gleich mal das Tumbleweed Repo aktiviert.
Entsprechend hat er mir auch gleich versucht, einen 3.0er Kernel unter zu jubel. Das ging soweit leider schief, weil er irgendwie nicht die ganzen Kernel-Module mitinstalliert hat. Nachdem ich dann von kernel-desktop auf kernel-default geswitched habe, hat es dann aber auch geklappt.
Was mir nun aber noch Kopfschmerzen bereitet hat: VMWare Player wollte partout nicht die Kernel-Module compilieren. Es kam dabei immer die Meldung
Logging to /tmp/vmware-root/setup-8795.log ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmmon ERROR: modinfo: could not find module vmnet ERROR: modinfo: could not find module vmblock ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module vsock Stopping VMware services: VMware USB Arbitrator done VM communication interface socket family done Virtual machine communication interface done Virtual machine monitor done Blocking file system done Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-root/modules/vmmon-only' make -C /lib/modules/3.0.3-41-default/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \ MODULEBUILDDIR= modules make[1]: Entering directory `/usr/src/linux-3.0.3-41-obj/x86_64/default' make -C ../../../linux-3.0.3-41 O=/usr/src/linux-3.0.3-41-obj/x86_64/default/. modules CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o /tmp/vmware-root/modules/vmmon-only/linux/driver.c:783:59: error: ‘SPIN_LOCK_UNLOCKED’ undeclared here (not in a function) make[4]: *** [/tmp/vmware-root/modules/vmmon-only/linux/driver.o] Error 1 make[3]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2 make[2]: *** [sub-make] Error 2 make[1]: *** [all] Error 2 make[1]: Leaving directory `/usr/src/linux-3.0.3-41-obj/x86_64/default' make: *** [vmmon.ko] Error 2 make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
und dann wars das auch schon. Etwas googlen und schnell war aber die Lösung gefunden:
Scheinbar hat er Probleme mit der Versionierung und dann müssen auch noch ein paar Sourcen gepatcht werden, damit es klappt.
Fix für die Versionierung:
sed 's/\x83\xe8\x03\x83\xf8\x01\x0f\x96\xc0/\x83\xe8\x02\x83\xf8\x01\x0f\x96\xc0/' -i /usr/lib/vmware/lib/libvmware-modconfig-console.so/libvmware-modconfig-console.so sed 's/\x83\xe8\x03\x83\xf8\x01\x0f\x96\xc0/\x83\xe8\x02\x83\xf8\x01\x0f\x96\xc0/' -i /usr/lib/vmware/lib/libvmware-modconfig.so/libvmware-modconfig.so
Patch fürs compilieren:
mkdir /tmp/vmware && cd /tmp/vmware for t in /usr/lib/vmware/modules/source/*.tar; do tar xf $t; mv $t{,.original}; done wget -qO- http://kaslit.com/downloads/vmware2.6.39fixed.patch | patch -Np1 for d in *-only; do tar cf /usr/lib/vmware/modules/source/${d/%-only/}.tar $d; done
Hilfreich hierbei war der Link.