staging.inyokaproject.org

hochauflösende konsole uvesafb howto *WORKS NOW VERY WELL*

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

rafi

Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

Manuelle Installation von uvesafb, der Nachfolger von vesafb

In den neueren Linux-Kernel ist anstelle vom alten vesafb das uvesafb Modul enthalten, welches sich ebenfalls hervorragend zum Nutzen einer hochauflösenden Konsole eignet. Allerdings wird hierfür ein weiteres Programm benötigt, namens v86d, welches unbedingt benötigt wird, da es eine Brücke zwischen Grafikkarte und dem Kernel darstellt.

Dieses Packet v86d ist in der Version 0.1.5 in gewissen Ubuntuquellen vorhanden, allerdings eignet sich diese Version nicht, da sie gegen falsche Abhängigkeiten gelinkt wurde. Deshalb holt man sich kurzentschlossen die neue Version 0.1.6 auf http://dev.gentoo.org/~spock/projects/uvesafb/ und entpackt sie in /opt/

Um nun das Packet nun selber zu bauen werden Kernelquellen benötigt, am besten die von den Ubuntu-Repos mit der aktuellen Config-Datei aus /boot/ als Grundlage Siehe hierzu folgenden Wiki Eintrag //wiki.ubuntuusers.de/Kernel:

Man entpacke den Kernel im Verzeichnis /usr/src/ und erstelle dann einen symbolischen link auf das Quellverzeichnis linux im gleichen Ordner, also z.b.

root@PrinzIP:/usr/src# ln -s ./linux-source-2.6.27 ./linux

Man wechselt man ins Quellenverzeichnis.

Nun bearbeitet man den Kernel mit

make menuconfig

und ändert folgende Module die man in der Kategorie "Device" findet, indem man sie fest in den Kernel einbaut (also ein * (Sternchen) statt M (Modul))

Device Drivers –→ Connector - unified userspace ←> kernelspace linker und Device Drivers –→ Graphics support –→ Support for frame buffer devices –→ Userspace VESA VGA graphics support

und als letztes unter General Setup ––→ unter der Stelle Initial RAM Filesystem folgende location eingeben /opt/v86d-0.1.6/misc/initramfs

nun diese Konfiguration speichern und den Kernel folgendermaßen bauen (mit initrd und am besten mit Headers, die kann man später immer brauchen)

root@PrinzIP:/usr/src/linux# make-kpkg --initrd kernel-image kernel-headers

anschließend installiert man den Kernel (ich musste dafür die ältere Kernelversion 2.6.27-1-generic entfernen, da es sonst zu Komplikationen mit der firmware gekommen wäre)

nun startet man den neuen Kernel neu, ACHTUNG: noch funktioniert es nicht, aber beim nächsten start!

Nun wechselt man ins Verzeichnis /opt/v86d-0.1.6/ und macht folgende 3 Schritte:

./configure --with-x86emu

anschließend baut man es und verlinkt auf das Source Verzeichnis vom Kernel, hier /usr/src/linux, falls man die Quellen an diesen Ort verlinkt hat, wie oben beschrieben

make KDIR=/usr/src/linux

← Eben das Verzeichnis zum Kernel Source

als letztes installiert man nun v86d als root mit

make install

Nun muss das Modul korrekt in den initramfs aufgenommen werden. Hierfür muss die Datei /usr/share/initramfs-tools/hooks/udev mit Rootrechten bearbeitet werden und, folgende Zeile hinzufügen:

copy_exec /sbin/v86d /sbin

anschließend folgende Datei mit Rootrechten bearbeiten /etc/initramfs-tools/modules und hier das modul uvesafb hinzufügen

Nun den initrd updaten mit

update-initramfs -u -k ''Kernelversion''

(Kernelversion ist die Ausgabe von uname -r)

und als letztes das Grubmenu bearbeiten /boot/grub/menu.lst und zwar nicht wie gehabt mit vga= sondern mit

video=uvesafb:1024x768-32,mtrr:3,ywrap,v86d

andere Einstellungsmöglichkeiten findet man unter http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/fb/framebuffer.txt;hb=HEAD

nach einem Neustart müsste jetzt sehr schöne Auflösung am start sein ☺

rafi

(Themenstarter)
Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

rafi

(Themenstarter)
Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

Thorsten_Reinbold Team-Icon

Anmeldungsdatum:
10. Juli 2006

Beiträge: 4784

Ist aber in der Alpha-Phase völlig sinnfrei. Es geht ja schlisslich darum, die bestehenden Probleme in den offiziellen Paketen zu lösen. Hole ich mir Fremdpakete ins System mag das für MICH zwar very well wörken, der Rest der Nutzer hat da aber so rein gar nichts von.

Thorsten_Reinbold Team-Icon

Anmeldungsdatum:
10. Juli 2006

Beiträge: 4784

Ist aber in der Alpha-Phase völlig sinnfrei. Es geht ja schlisslich darum, die bestehenden Probleme in den offiziellen Paketen zu lösen. Hole ich mir Fremdpakete ins System mag das für MICH zwar very well wörken, der Rest der Nutzer hat da aber so rein gar nichts von.

Thorsten_Reinbold Team-Icon

Anmeldungsdatum:
10. Juli 2006

Beiträge: 4784

By the way: hast du die falschen Abhängigkeiten beim Launchpad als Bugreport eingetragen?

rafi

(Themenstarter)
Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

nö schau doch mal

root@PrinzIP:/home/rafael# apt-cache -f search v86d
Package: v86d
Priority: optional
Section: universe/utils
Installed-Size: 180
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Evgeni Golov <sargentd@die-welt.net>
Architecture: i386
Version: 0.1.5-1ubuntu2
Depends: libc6 (>= 2.7)
Filename: pool/universe/v/v86d/v86d_0.1.5-1ubuntu2_i386.deb
Size: 38496
MD5sum: 7bce58bc9dd9c6193d45c19bd7911a92
SHA1: 37b5424e000406efb4b80955b707f62ccaa90e22
SHA256: 1876898d8a8526f22156d406fa538b8683c04088f504829ed2d75c859aa25813
Description: daemon to run x86 code in an emulated environment
 v86d provides a backend for kernel drivers that need to execute
 x86 BIOS code. The code is executed in a controlled environment
 and the results are passed back to the kernel via the netlink
 interface.
 .
 v86d is needed by the uvesafb kernel module.
 .
 This package is built against glibc, as Debian's klibc does not
 have proper uvesafb support yet.
Homepage: http://dev.gentoo.org/~spock/projects/uvesafb/
Bugs: mailto:ubuntu-users@lists.ubuntu.com
Origin: Ubuntu

is gegen glibc gebaut, kann also in der form "noch" nix damit anfangen, und muss es daher neu bauen.

welchen launchpad artikel meinst du denn genau??

Thorsten_Reinbold Team-Icon

Anmeldungsdatum:
10. Juli 2006

Beiträge: 4784

Diesen hier. Vielleicht solltest du dich da mit anhängen.

rafi

(Themenstarter)
Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

hab mal was angefügt

Thorsten_Reinbold Team-Icon

Anmeldungsdatum:
10. Juli 2006

Beiträge: 4784

Scheint so, als hättest du nicht so ganz begriffen worum es ging. 🙄

rafi

(Themenstarter)
Avatar von rafi

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1050

der punkt is dass v86d falsch gebaut wurde und dass man im kernel eine quelle angeben muss wo die datei liegt. das ist dann keinesfalls verpflichtend, du kannst ja selber im menu.lst reinschreiben oder auch nicht ob du mit uvesafb booten willst, oder halt ein mini script zum umgehen, das is bei mir grad mal 7 zeilen shell lang

so stellt es einen anreiz an die entwickler dar v86d ordentlich zu kompilieren

Antworten |