Tuesday, April 25, 2006

Inštalácia VMware

To som si zase užil krušné chvíľe a dobrodružstvo v zmeti 32/64bit knižníc. Najprv som skúsil nainštalovať vmware štandardne do 64bit debianu, keď už sa zdalo, že inštalácia prebehne v poriadku tak nakonci si vmware potreboval ešte preložiť nejaké moduly do jadra. A bác ho, problém - moduly nešlo preložiť. Tak som po chvíľke hľadania na sieti zistil, že k úspešnému preloženiu modulov potrebujem menší update - konkrétne vmware-any-any-update101. To však nebolo všekto. Update prebehol moduly sa preložili a ja som s úsmevom zadal do terminálu vmware a čakal ako mi to už krásne pobeží. Ale miesto naštartovania vmware to na mňa vypľulo hlášku:

/usr/local/lib/vmware/bin/vmware: error while loading shared libraries: libX11.so.6: cannot open shared object file: No such file or directory

Myslím si, zas nemám nainštalovanú nejakú knižnicu. Ale po prehľadaní /usr mi to vrátilo, že knižnica je nainštalovaná v /usr/lib/. Reku, kde ja teda chyba?
Skúsil som ldconfig a nič. ldconfig -v | grep libX11 mi knižnicu zobrazil takže jednoznačne o nej vedel.

Určite to teda bude nejakým problémom na pomedzí 64/32bit knižníc, takže som skúsil nainštalovať vmware do chrootu. Lenže tento pokus skončil tiež neúspechom pretože sa nepodarilo preložiť moduly v 32bit debiane pre 64bit jadro - niečo tam haprovalo.

Znovu som to teda skúsil v 64bit debiane a tentoraz sa zameral na nenájdenú knižnicu libX11.so.6. Premýšľal som či nebude ešte problém v tom, že nový Xorg zrušil prakticky obsah /usr/X11R6 a že by vmware mohol byť nejak staticky naviazany na knižnice v tomto adresári. Ale ani po rôznom čachrovaní so symlinkami ani kopírovaním knižníc na rôzne miesta kde by to mohol vmware očkávať sa nič nezmenilo.

V tom mi ale v hlave skŕsla myšlienka - čo tak ukázať ldconfigu že mám ešte 32bitové knižnice v chroote? Tak som teda pridal do /etc/ld.so.conf tento riadok:

/chroot/usr/lib

spustil ldconfig a div sa svete vmware sa ako zázrakom rozbehol. Dúfam len že toto kríženie knižníc nejak nepoznamená chod iných aplikácií. Na to by mi mohol odpovedať možno dáky linux expert ak sem nejaký zablúdi :-) alebo čas ukáže ;-).

[ithink]
Toto riešenie sa bude dať pravdepodobne aplikovať i v prípade, že nemáme v chroote 32bit debian. Stačí si len pozháňat potrebné 32bitové knižnice, umiestniť ich napr. do /emul/ia32-linux/usr/lib/ a ukázať ldconfig-u kde ich má hľadať.
[/ithink]

No comments: