RSS Feed abonnieren

Secondlife Client (32 Bit) unter Gentoo 64 Bit

07. November 2009

Den Client für Secondlife gibt es offiziell bisher nur für 32 Bit Systeme. Man kann diesen mit ein wenig basteln auch unter einem 64 Bit System benutzen.

Mein Basissystem ist ein aktuelle 64 Bit Gentoo. Nun wird gemäß dem 32Bit Chroot Guide for Gentoo zuerst eine 32 Bit Umgebung installiert. Bei mir ist dieses nach /opt/linux32 installiert.

Als nächstes wird dieses betreten

# linux32 chroot /opt/linux32

und das Profil auf ein aktuelles Desktop-Profil gesetzt.

# eselect profile list
Available profile symlink targets:
  [1]   default/linux/x86/10.0 *
  [2]   default/linux/x86/10.0/desktop
  [3]   default/linux/x86/10.0/developer
  [4]   default/linux/x86/10.0/server
  [5]   hardened/linux/x86/10.0
  [6]   selinux/2007.0/x86
  [7]   selinux/2007.0/x86/hardened
  [8]   selinux/v2refpolicy/x86
  [9]   selinux/v2refpolicy/x86/desktop
  [10]  selinux/v2refpolicy/x86/developer
  [11]  selinux/v2refpolicy/x86/hardened
  [12]  selinux/v2refpolicy/x86/server
 
# eselect profile set 2

Anschliessend wird die make.conf für ein X-System angepaßt. Bitte hier auch die richtige Grafikkarte unter VIDEO_CARDS einstellen. Meine make.conf sieht so aus (Auszug):

CFLAGS="-O2 -march=native -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="i686-pc-linux-gnu"
USE="mmx sse sse2 -ldap -acl -ipv6 esd -gnome -nls -cups -doc"
VIDEO_CARDS="nvidia"
INPUT_DEVICES="evdev keyboard mouse"

Nun installieren wir die diversen Pakete die für ein X-System notwendig sind. esound pack ich auch gleich mit dazu (hier bin ich mir allerdings nicht sicher ob der nötig wäre, schaden kann es jedenfall nicht) Idealerweise benutzt man -e um das System gleich passend für die CPU zu übersetzen.

# emerge -e xorg-x11 esound

Die Installation wird in diesem Fall spätestens bei der Installation der nvidia-drivers abbrechen.

Dazu kurz zur Erklärung. Um die Grafiktreiber zu installieren wird ein konfigurierter und kompilierter Kernel vorrausgesetzt. Dies ist zu diesem Zeitpunkt noch nicht geschehen und ich konnte bisher auch keine Möglichkeit finden den Kernel im linux32-chroot zu kompilieren.

Dazu an dieser Stelle folgender Workaround. Man installiert die gleiche Kernelversion auf einer 32 Bit Maschine, konfiguriert und kompiliert diese dort und kopiert das /usr/src/linux Verzeichnis wieder in den chroot. Wer möchte kann auch ein bootbares 32Bit System auf einer anderen Partition erstellen und dieses für den chroot nutzen. Das kann etwas Ärger ersparen.

Also nochmal zusammenfassend: vor der Grafiktreiber-Installation den Kernel konfigurieren und kompilieren. Anschliessend prüfen ob der Symlink /usr/src/linux auch auf diese Kernelsourcen zeigt.

Nun ist der Kernel im chroot konfiguriert und der Grafiktreiber bzw. die restlichen Pakete lassen sich mit

# emerge --resume

installieren. Nicht vergessen anschliessend mit eselect das richtige opengl Interface auszuwählen.

# eselect opengl list
Available OpenGL implementations:
[1] nvidia
[2] xorg-x11 *
# eselect opengl set 1

Das wars schon. Es müssen innerhalb der chroot-Umgebung keine Konfigurationsdateien bearbeitet werden.

Jetzt den Secondlife Client herunterladen und auspacken. Das Erläutern hierzu erspar ich mir, so schlau werdet ihr ja selbst sein ;)

Anschliessend im 64 Bit System (also außerhalb des chroot) den X-Server für localhost freigeben.

# xhost local:localhost

Nun kann innerhalb des chroot der Secondlife Client gestartet werden.

Bei folgender Fehlermeldung diesen Workround beachten.

bin/do-not-directly-run-secondlife-bin: error while loading shared libraries:
libjpeg.so.62: cannot open shared object file: No such file or directory

Viel Erfolg.

Lesezeichen?
  • MisterWong.DE
  • del.icio.us
  • Technorati
  • Google Bookmarks
  • Digg
  • Mixx
  • LinkArena

Tags: , ,

Kommentar?

Hinweise zum Datenschutz siehe Impressum