Pearls
09.08.2008, 13:44
Hallo!
Da ich gerade X-Plane auf Linux installiert habe, und jetzt am warten bin, dass Gimp kompiliert wird, habe ich gedacht, dass es vielleicht nützlich gewesen wäre hier meine Erfahrungen für andere Benutzer zu posten.
Also, als Distribution verwende ich Gentoo, für 64bit kompiliert. Ich habe diese Distro in den letzten Jahren schon auf mehreren PCs und notebooks installiert, und war damit immer sehr zufrieden.
Als window manager verwende ich Enlightenment - ist extrem flexibel, mittels eesh ist er script-friendly, verwendet praktisch keine Ressourcen und hat keine Icons oder Taskbars, die Platz verschwenden. KDE war mir zu gross und der Layout von Gnome hat mich immer irgendwie ein bisschen deprimiert. Mein nächster Favorit nach Enlightenment wäre Xfce gewesen, auch wenn er noch ein bisschen zu "starr" ist.
Da ich 2 Monitors habe, habe ich als erstes die X-Konfiguration so geändert, so dass ich zwei getrennte Desktops habe - auf dem ersten läuft X-Plane, auf dem zweiten wird die Systemauslastung gezeigt (die zwei Monitors laufen mit unterschiedlichen Auflösungen, und der Monitor 0 ist mittels DVI-Kabel verbunden, der zweite mittels VGA-Kabel, ist aber auch ein LCD <= in diesem Fall muss man CRT und nicht DFP angeben - siehe unten). Die /etc/X11/xorg.conf-Datei sieht bei mir wie folgt aus:
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" 1440 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/TTF/"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/CID/"
FontPath "/usr/share/fonts/75dpi/"
FontPath "/usr/share/fonts/100dpi/"
EndSection
Section "Module"
Load "dbe"
# Load "dri"
Load "extmod"
Load "glx"
Load "record"
Load "xtrap"
Load "freetype"
Load "type1"
EndSection
Section "ServerFlags"
# Removed Option "Xinerama" "1"
Option "BlankTime" "20"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# Option "XkbLayout" "de_CH"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbLayout" "ch"
Option "XkbVariant" "de"
EndSection
Section "InputDevice"
## Option "ChordMiddle"
## Option "Buttons" "2"
## Option "ZAxisMapping" "4 5 6 7"
# Option "MinSpeed" "1.00"
# Option "MaxSpeed" "2.40"
# Option "AccelFactor" "0.090"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mouse0" #Touchpad
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Samsung SyncMaster"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "CRT-1"
HorizSync 28.0 - 80.0
VertRefresh 43.0 - 75.0
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "nVidia Corporation"
BoardName "Unknown Board"
Option "Coolbits" "1"
BusID "PCI:1:0:0"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 8800 GTS 512"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Videocard1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 8800 GTS 512"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "DFP: 1440x900 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Videocard1"
Monitor "Monitor1"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "CRT: 1280x1024 +0+0"
EndSection
Danach musste ich die Audioausgabe aktivieren.
Mein Motherboard ist ein ASUS P5Q mit Intel ICH10R und "lspci" brachte...
00:1b.0 Audio device: Intel Corporation Unknown device 3a3e
...zurück. Ich wusste, dass der Audiochip ein HD-Audio von Intel war, und habe deshalb im Kernel der "snd-hda-intel"-Treiber als Modul kompiliert. Mit einem 2.6.24.x-Kernel funktionierte das aber immer noch nicht - nachdem ich ein Upgrade auf dem 2.6.25-r7 durchführte, war das auch kein Problem mehr. Danach "alsaconf" ausführen, und alles lief.
Ich hatte mir vorgestellt, dass ich eine Woche gebraucht hätte um den Joystick (Saitek X52) zu konfigurieren, aber nach fünf Minuten war das auch Betriebsbereit - musste nur der Modul "joydev" kompilieren, und danach hatte ich mit "cat /dev/input/js0" schon einen Output auf dem Bildschirm. Ich muss sagen, dass ich wirklich erstaunt war.
Also, jetzt konnte ich etwas sehen, hören, und steuern - bereit um X-Plane zu installieren :)
Hey, kein Linux-Executable auf der Installations-DVD! Nachdem ich durch die DVD-Struktur zehn Mal navigiert war, hatte ich angefangen zu denken, dass das Bier vielleicht doch eine grössere Auswirkung auf das Denkvermögen hat :o. Habe also die Loser's-Abfrage "x-plane 9 cannot find DVD installer" in Google eingegeben und schau mal da - die beta-Version von X-Plane 9 wurde ohne Linux-Installer ausgeliefert, und man soll der Installer von x-plane.com runterladen. Aaaaahhhhh!
Habe also der Installer runtergeladen und um die Installation ein bisschen zu beschleuniger habe ich die DVDs immer zuerst als Image auf der Festplatte kopiert und so gemounted (ich meine "dd if=/dev/cdrom of=xplane_xx.iso" und "mount -o loop xplane_xx.iso /mnt/cdrom").
Deja-vu: X-Plane wurde installiert aber ich konnte im Installationsordner, im home-Ordner und in den anderen bin-Ordner wirklich kein Executable finden. Wieder eine Loser's-Abfrage abgesetzt und ...... X-Plane 9 beta wurde ohne Linux-Executable geliefert - der wird erst nach einem Network-Update installiert.
Ok, habe also der Network-Update von x-plane.com runtergeladen, Update durchgeführt, und danach war endlich alles vorhanden.
Beim Versuch X-Plane zu starten sind danach immer die Fehlermeldungen...
error while loading shared libraries: libopenal.so.0: cannot open shared object file: No such file or directory
...und..
.
Could not get our host
...erschienen.
Um das erste Problem zu lösen musste ich die 32bit-compatibility Library von OpenAL mit...
emerge emul-linux-x86-soundlibs
...installieren. Easy.
Beim zweiten Problem wusste ich nicht, ob "host" mein PC oder der von X-Plane.com gemeint war. Die Lösung war für mich in der Datei "/etc/hosts" die Zeile...
# IPv4 and IPv6 localhost aliases
127.0.0.1 localhost
...auf...
# IPv4 and IPv6 localhost aliases
127.0.0.1 quad
...zu ändern.
Der name "quad" ist auch, was ich in der Datei "/etc/conf.d/hostname" konfiguriert hatte. Bisher hatte jedoch auf allen PCs auch immer alles funktioniert ohne, dass ich etwas ändern musste - nur X-Plane hatte sich darüber beschwert. Boh.
Endlich konnte ich X-Plane starten. Der Start war schneller als unter Windows (benutze auf Linux ein Reiserfs Filesystem).
Die Framerate ist unter Linux mindestens so gut wie unter WindowsXP, vielleicht ein paar fps schneller. Komischerweise kriege ich ein paar fps (2 -3) mehr, wenn ich die Texturen auf "Extrem res" einstelle (~34.7 fps), als wenn sie auf "high" eingestellt sind (Tests in LSZH mit lszh-Flughafen durchgeführt. 1440x900, 4xAA, nvidia-drivers 173.14.09). Es sollte eigentlich genau das Gegenteil sein, speziellerweise weil mit "Extreme" um die 680MB vram und mit "High" um die 230MB vram verwendet werden, und meine Graka hat "nur" 512MB. Komisch!!
Der riesige Unterschied von Linux 64b vs. WindowsXP 32bit ist aber natürlich, dass ich unter Linux alle 4GB RAM verwenden kann, und Windows konnte nur ~3.2GB sehen - es können also viel mehr Dateien im Cache behalten werden - für X-Plane selbst ändert sich natürlich nichts. Das, zusammen mit dem besseren Cache-Management von Linux führt für mich zu viel kurzeren Pausen um Sceneries zu laden.
Das Update der nVidia-Treiber von 169.09-r1 auf 173.14.09 führte gem. den Phoronix-Xplane-Test zu einer Verringerung der Fps von 75 auf 74 :-? .
Also, für mich sieht es jetzt ziemlich gut aus.
Schade, dass beim X52 einen Knopf nicht erkannt wird - auf der anderen Seite werden jetzt zwei anderen Knöpfe erkannt, die vorher unter Windows nicht funktionierten :). Und ich hatte gestern auch einige Schwierigkeiten um die Joystick-Sensibilität zu einstellen - bin wie ein Irre geflogen. Vielleicht habe ich aber jetzt verstanden, wie ich es einstellen sollte.
Und der "Speech synthesis" wird von X-Plane auf Linux nicht unterstützt :-[.
Aber ansonsten bin ich happy.
Ich habe jetzt eine Kopie der Installation gemacht und werde mal die letzte X-Plane beta installieren. Mal schauen.
Ciao!!
http://www.blah-blah.ch/mypublic_html/dualmon.png
Da ich gerade X-Plane auf Linux installiert habe, und jetzt am warten bin, dass Gimp kompiliert wird, habe ich gedacht, dass es vielleicht nützlich gewesen wäre hier meine Erfahrungen für andere Benutzer zu posten.
Also, als Distribution verwende ich Gentoo, für 64bit kompiliert. Ich habe diese Distro in den letzten Jahren schon auf mehreren PCs und notebooks installiert, und war damit immer sehr zufrieden.
Als window manager verwende ich Enlightenment - ist extrem flexibel, mittels eesh ist er script-friendly, verwendet praktisch keine Ressourcen und hat keine Icons oder Taskbars, die Platz verschwenden. KDE war mir zu gross und der Layout von Gnome hat mich immer irgendwie ein bisschen deprimiert. Mein nächster Favorit nach Enlightenment wäre Xfce gewesen, auch wenn er noch ein bisschen zu "starr" ist.
Da ich 2 Monitors habe, habe ich als erstes die X-Konfiguration so geändert, so dass ich zwei getrennte Desktops habe - auf dem ersten läuft X-Plane, auf dem zweiten wird die Systemauslastung gezeigt (die zwei Monitors laufen mit unterschiedlichen Auflösungen, und der Monitor 0 ist mittels DVI-Kabel verbunden, der zweite mittels VGA-Kabel, ist aber auch ein LCD <= in diesem Fall muss man CRT und nicht DFP angeben - siehe unten). Die /etc/X11/xorg.conf-Datei sieht bei mir wie folgt aus:
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" 1440 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/TTF/"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/CID/"
FontPath "/usr/share/fonts/75dpi/"
FontPath "/usr/share/fonts/100dpi/"
EndSection
Section "Module"
Load "dbe"
# Load "dri"
Load "extmod"
Load "glx"
Load "record"
Load "xtrap"
Load "freetype"
Load "type1"
EndSection
Section "ServerFlags"
# Removed Option "Xinerama" "1"
Option "BlankTime" "20"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# Option "XkbLayout" "de_CH"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbLayout" "ch"
Option "XkbVariant" "de"
EndSection
Section "InputDevice"
## Option "ChordMiddle"
## Option "Buttons" "2"
## Option "ZAxisMapping" "4 5 6 7"
# Option "MinSpeed" "1.00"
# Option "MaxSpeed" "2.40"
# Option "AccelFactor" "0.090"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mouse0" #Touchpad
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Samsung SyncMaster"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "CRT-1"
HorizSync 28.0 - 80.0
VertRefresh 43.0 - 75.0
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "nVidia Corporation"
BoardName "Unknown Board"
Option "Coolbits" "1"
BusID "PCI:1:0:0"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 8800 GTS 512"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Videocard1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 8800 GTS 512"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "DFP: 1440x900 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Videocard1"
Monitor "Monitor1"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "CRT: 1280x1024 +0+0"
EndSection
Danach musste ich die Audioausgabe aktivieren.
Mein Motherboard ist ein ASUS P5Q mit Intel ICH10R und "lspci" brachte...
00:1b.0 Audio device: Intel Corporation Unknown device 3a3e
...zurück. Ich wusste, dass der Audiochip ein HD-Audio von Intel war, und habe deshalb im Kernel der "snd-hda-intel"-Treiber als Modul kompiliert. Mit einem 2.6.24.x-Kernel funktionierte das aber immer noch nicht - nachdem ich ein Upgrade auf dem 2.6.25-r7 durchführte, war das auch kein Problem mehr. Danach "alsaconf" ausführen, und alles lief.
Ich hatte mir vorgestellt, dass ich eine Woche gebraucht hätte um den Joystick (Saitek X52) zu konfigurieren, aber nach fünf Minuten war das auch Betriebsbereit - musste nur der Modul "joydev" kompilieren, und danach hatte ich mit "cat /dev/input/js0" schon einen Output auf dem Bildschirm. Ich muss sagen, dass ich wirklich erstaunt war.
Also, jetzt konnte ich etwas sehen, hören, und steuern - bereit um X-Plane zu installieren :)
Hey, kein Linux-Executable auf der Installations-DVD! Nachdem ich durch die DVD-Struktur zehn Mal navigiert war, hatte ich angefangen zu denken, dass das Bier vielleicht doch eine grössere Auswirkung auf das Denkvermögen hat :o. Habe also die Loser's-Abfrage "x-plane 9 cannot find DVD installer" in Google eingegeben und schau mal da - die beta-Version von X-Plane 9 wurde ohne Linux-Installer ausgeliefert, und man soll der Installer von x-plane.com runterladen. Aaaaahhhhh!
Habe also der Installer runtergeladen und um die Installation ein bisschen zu beschleuniger habe ich die DVDs immer zuerst als Image auf der Festplatte kopiert und so gemounted (ich meine "dd if=/dev/cdrom of=xplane_xx.iso" und "mount -o loop xplane_xx.iso /mnt/cdrom").
Deja-vu: X-Plane wurde installiert aber ich konnte im Installationsordner, im home-Ordner und in den anderen bin-Ordner wirklich kein Executable finden. Wieder eine Loser's-Abfrage abgesetzt und ...... X-Plane 9 beta wurde ohne Linux-Executable geliefert - der wird erst nach einem Network-Update installiert.
Ok, habe also der Network-Update von x-plane.com runtergeladen, Update durchgeführt, und danach war endlich alles vorhanden.
Beim Versuch X-Plane zu starten sind danach immer die Fehlermeldungen...
error while loading shared libraries: libopenal.so.0: cannot open shared object file: No such file or directory
...und..
.
Could not get our host
...erschienen.
Um das erste Problem zu lösen musste ich die 32bit-compatibility Library von OpenAL mit...
emerge emul-linux-x86-soundlibs
...installieren. Easy.
Beim zweiten Problem wusste ich nicht, ob "host" mein PC oder der von X-Plane.com gemeint war. Die Lösung war für mich in der Datei "/etc/hosts" die Zeile...
# IPv4 and IPv6 localhost aliases
127.0.0.1 localhost
...auf...
# IPv4 and IPv6 localhost aliases
127.0.0.1 quad
...zu ändern.
Der name "quad" ist auch, was ich in der Datei "/etc/conf.d/hostname" konfiguriert hatte. Bisher hatte jedoch auf allen PCs auch immer alles funktioniert ohne, dass ich etwas ändern musste - nur X-Plane hatte sich darüber beschwert. Boh.
Endlich konnte ich X-Plane starten. Der Start war schneller als unter Windows (benutze auf Linux ein Reiserfs Filesystem).
Die Framerate ist unter Linux mindestens so gut wie unter WindowsXP, vielleicht ein paar fps schneller. Komischerweise kriege ich ein paar fps (2 -3) mehr, wenn ich die Texturen auf "Extrem res" einstelle (~34.7 fps), als wenn sie auf "high" eingestellt sind (Tests in LSZH mit lszh-Flughafen durchgeführt. 1440x900, 4xAA, nvidia-drivers 173.14.09). Es sollte eigentlich genau das Gegenteil sein, speziellerweise weil mit "Extreme" um die 680MB vram und mit "High" um die 230MB vram verwendet werden, und meine Graka hat "nur" 512MB. Komisch!!
Der riesige Unterschied von Linux 64b vs. WindowsXP 32bit ist aber natürlich, dass ich unter Linux alle 4GB RAM verwenden kann, und Windows konnte nur ~3.2GB sehen - es können also viel mehr Dateien im Cache behalten werden - für X-Plane selbst ändert sich natürlich nichts. Das, zusammen mit dem besseren Cache-Management von Linux führt für mich zu viel kurzeren Pausen um Sceneries zu laden.
Das Update der nVidia-Treiber von 169.09-r1 auf 173.14.09 führte gem. den Phoronix-Xplane-Test zu einer Verringerung der Fps von 75 auf 74 :-? .
Also, für mich sieht es jetzt ziemlich gut aus.
Schade, dass beim X52 einen Knopf nicht erkannt wird - auf der anderen Seite werden jetzt zwei anderen Knöpfe erkannt, die vorher unter Windows nicht funktionierten :). Und ich hatte gestern auch einige Schwierigkeiten um die Joystick-Sensibilität zu einstellen - bin wie ein Irre geflogen. Vielleicht habe ich aber jetzt verstanden, wie ich es einstellen sollte.
Und der "Speech synthesis" wird von X-Plane auf Linux nicht unterstützt :-[.
Aber ansonsten bin ich happy.
Ich habe jetzt eine Kopie der Installation gemacht und werde mal die letzte X-Plane beta installieren. Mal schauen.
Ciao!!
http://www.blah-blah.ch/mypublic_html/dualmon.png