BSDForen.de  

Zurück   BSDForen.de > FreeBSD > FreeBSD - Anwendungen und Ports

Antwort
 
Themen-Optionen Thema bewerten Ansicht
Alt 10.10.2010, 00:39   #1
Fusselbär
Makefile Voyeur
 
Benutzerbild von Fusselbär
 
Registrierungsdatum: Aug 2004
Ort: Köln
Beiträge: 1.646
64-bit x11/nvidia-driver via Ports installieren

Hier mal wieder was für alle, die gerne ein bisschen was zum basteln haben, damit es nicht langweilig wird.
Auch der 64-bit x11/nvidia-driver lässt sich nach ein bisschen D.I.Y ziemlich schmerzfrei über die Ports installieren.

Klar, dass mutige Naturen gleich den allerneusten Beta 64-bit nvidia-driver ausprobieren wollen.
Ein kurzer Blick auf den Nvidia FTP Server:
ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/
zeigt, dass das zur Zeit der mit der Versionsnummer 260.19.06 ist.

Die letzten Änderungen des x11/nvidia-driver Ports machen das jetzt besonders einfach:
http://www.freebsd.org/cgi/cvsweb.cg...=1.99&r2=1.100
und:
http://www.freebsd.org/cgi/cvsweb.cg...1.100&r2=1.101

Vorraussetzungen für den 64-bit nvidia-driver sind mindestens eine Nvidia Grafikkarte, die mit den neuen Treibern benutzt werden kann.
Ältere Nvidia Grafikkarten brauchen die Legacy nvida-driver. So weit ich weiß, gibt es die Legacy Treiber nicht als FreeBSD 64-bit nvidia-driver, sollte ich mich da täuschen, könnt ihr es gerne mitteilen.
Und es wird 64-bit (aka. amd64) FreeBSD ab 7.3-RELEASE oder ab 8.0-RELEASE benötigt.

So geht es:
in das Verzeichnis /usr/ports/x11/nvidia-driver/ wechseln.
Hier ist der diff für das Makefile:
http://bsdpaste.bsdgroup.de/26021
Hier ist der diff für die distinfo:
http://bsdpaste.bsdgroup.de/26022

Gepatcht wird mit dem Befehl patch,
das geht so:
Code:
patch < name_vom_patch.diff
Fetchen lassen sich die diff so:
- Für das Makefile:
Code:
fetch -o Makefile-nvidia-driver-x86-64-260.19.06.diff http://bsdpaste.bsdgroup.de/26021/download
- Für die distinfo:
Code:
fetch -o distinfo-nvidia-driver-x86_64-260.19.06.diff http://bsdpaste.bsdgroup.de/26022/download

Wie man sieht, sind nur minimale Änderungen vorzunehmen, dank den letzten Änderungen am x11/nvidia-driver Port.
Zuvor musste noch etwas an den patches im files Verzeichnis geändert werden, das fällt inzwischen weg.

Wie immer alles auf eigene Gefahr. Rutschig wenn feucht!
.
__________________
BSD Zockerclub
FreeBSD 9.1-STABLE amd64
Fusselbär ist offline   Mit Zitat antworten
Alt 10.10.2010, 07:19   #2
rhurlin
FLEX OS
 
Benutzerbild von rhurlin
 
Registrierungsdatum: Nov 2003
Ort: Northeim
Beiträge: 44
Hallo Fusselbär,
danke für den Hinweis auf die neue beta-Version 260.19.04.

Zitat:
Zitat von Fusselbär Beitrag anzeigen
Hier mal wieder was für alle, die gerne ein bisschen was zum basteln haben, damit es nicht langweilig wird.
Auch der 64-bit x11/nvidia-driver lässt sich nach ein bisschen D.I.Y ziemlich schmerzfrei über die Ports installieren.

Klar, dass mutige Naturen gleich den allerneusten Beta 64-bit nvidia-driver ausprobieren wollen.
Ein kurzer Blick auf den Nvidia FTP Server:
ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/
zeigt, dass das zur Zeit der mit der Versionsnummer 260.19.06 ist.

Die letzten Änderungen des x11/nvidia-driver Ports machen das jetzt besonders einfach:
http://www.freebsd.org/cgi/cvsweb.cg...=1.99&r2=1.100
und:
http://www.freebsd.org/cgi/cvsweb.cg...1.100&r2=1.101
Ab diesem Treiber wurden einige (zumindest für Entwickler) entscheidende Änderungen inhaltlicher Natur im Treiberpaket durchgeführt, siehe http://www.nvidia.de/object/freebsd-...driver-de.html:

"Die Lieferung und Installation der Header-Dateien für OpenGL, VDPAU, CUDA und OpenCL mit dem Treiber wurde eingestellt. Diese Dateien sind jetzt in den Linux Distributionspaketen erhältlich (sofern verfügbar) oder unter folgenden Adressen [...]"

VDPAU wird ja inzwischen über das package multimedia/libvdpau angeboten. Das fällt dann nicht weiter auf. Aber z.B. Entwickler von (Linux-)CUDA-Anwendungen stehen vor einer neuen Situation, für Grafikentwickler sollen auch die OpenGL-Header fehlen.

Zitat:
Zitat von Fusselbär Beitrag anzeigen
Vorraussetzungen für den 64-bit nvidia-driver sind mindestens eine Nvidia Grafikkarte, die mit den neuen Treibern benutzt werden kann.
Ältere Nvidia Grafikkarten brauchen die Legacy nvida-driver. So weit ich weiß, gibt es die Legacy Treiber nicht als FreeBSD 64-bit nvidia-driver, sollte ich mich da täuschen, könnt ihr es gerne mitteilen.
Und es wird 64-bit (aka. amd64) FreeBSD ab 7.3-RELEASE oder ab 8.0-RELEASE benötigt.

So geht es:
in das Verzeichnis /usr/ports/x11/nvidia-driver/ wechseln.
Hier ist der diff für das Makefile:
http://bsdpaste.bsdgroup.de/26021
Hier ist der diff für die distinfo:
http://bsdpaste.bsdgroup.de/26022

Gepatcht wird mit dem Befehl patch,
das geht so:
Code:
patch < name_vom_patch.diff
Fetchen lassen sich die diff so:
- Für das Makefile:
Code:
fetch -o Makefile-nvidia-driver-x86-64-260.19.06.diff http://bsdpaste.bsdgroup.de/26021/download
- Für die distinfo:
Code:
fetch -o distinfo-nvidia-driver-x86_64-260.19.06.diff http://bsdpaste.bsdgroup.de/26022/download
Wenn keine weiteren Patches notwendig sind, reicht es übrigens auch, per Editor die DISTVERSION von 195.36.15 auf 260.19.06 (und evtl. PORTVERSION) zu ändern und danach ein 'make makesum' auszuführen.
rhurlin ist offline   Mit Zitat antworten
Alt 10.10.2010, 09:36   #3
Yamagi
Possessed With Psi Powers
 
Benutzerbild von Yamagi
 
Registrierungsdatum: Apr 2004
Ort: Schleswig-Holstein
Beiträge: 6.598
Yamagi eine Nachricht über ICQ schicken
Man kann sich auf der nVidia-Seite übrigens zu einer E-Mail Benachrichtigung eintragen. Immer wenn eine neue Nicht-Beta-Version erscheint, bekommt man dann einen sehr praktischen Hinweis per E-Mail ins Postfach
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern.

Yamagi ist gerade online   Mit Zitat antworten
Alt 30.11.2010, 19:48   #4
Fusselbär
Makefile Voyeur
 
Benutzerbild von Fusselbär
 
Registrierungsdatum: Aug 2004
Ort: Köln
Beiträge: 1.646
Es gibt wieder was ganz frisches,
den nvidia-driver-260.19.26:
ftp://download.nvidia.com/XFree86/Fr..._64/260.19.26/

Habe ihn gerade gerade installiert, FreeBSD bootet immer noch, X-Server läuft auch noch und die glxgears drehen sich munter wie immer.
Die nvidia-settings-260.19.26 lassen sich aber zur Zeit nicht bauen, da im nvidia-settings-260.19.26.tar.bz2 Tarbollen einige Header Dateien und die dazu gehörigen Bilderchen fehlen. Sieht so aus, als würde da eine Art Batteriekontrolle in die nvidia-settings Einzug halten, möglicherweise für diese Nvidia 3D Vision Pro Geschichte mit diesen 3D Funkbrillen:
http://www.nvidia.com/object/3d-visi...nal-users.html
__________________
BSD Zockerclub
FreeBSD 9.1-STABLE amd64
Fusselbär ist offline   Mit Zitat antworten
Alt 30.11.2010, 20:06   #5
kmh
Registered User
 
Registrierungsdatum: Jun 2004
Ort: Paderborn
Beiträge: 182
Warum hinken die Ports den offiziellen Treibern eigentlich immer um ca. 4 Wochen hinterher?

Hat jemand ggf auch eine GTX460? Ich bekomme den X-Server nur per Nvidia Treibern zum laufen und der Rechner hängt sich in unregelmäßigen Abständen auf, wenn ich unter KDE die 3D-Effekte einschalte. Wenn ich die 3D-Effekte deaktiviere, killt sich nur der X-Server mit einem segmentation fault.

Hat jemand Tipps wie ich dem Fehler auf die Schliche komme? Das hauseigene NVidia log-tool liefert leider keinen Hinweis, lediglich eine fast leere logfile mit Angaben zur genutzen Architektur.
__________________
Glücklich ist der, der den Dingen auf den Grund gehen konnte.

Geändert von kmh (30.11.2010 um 21:29 Uhr).
kmh ist offline   Mit Zitat antworten
Alt 02.12.2010, 16:10   #6
Fusselbär
Makefile Voyeur
 
Benutzerbild von Fusselbär
 
Registrierungsdatum: Aug 2004
Ort: Köln
Beiträge: 1.646
Hallo kmh,

ich habe selbst keine Nvidia GTX 460, funktioniert deine den mit Windows und Linux ansonsten einwandfrei?

Meine Nvidia GT 240 und GTX 260, sowie die älteren AGP Nvidia Grafikkarten, die ich besitze, funktionierten für mich bisher prima mit FreeBSD.
Um von der zur Zeit im Port aktuellen nvidia-driver DISTVERSION 256.53 auf eine neuere zu springen, reicht es zur Zeit aus, einfach die DISTVERSION passend zu editieren.
Der nvidia-driver-260.19.26 ist ein Beta Treiber!
Das aktuelle Release lässt sich hier nachschlagen: http://www.nvidia.com/object/unix.html da ist es zur Zeit die Version 260.19.21.

Ich mache das im Prinzip so:
in das nvidia-driver Verzeichnis vom Port wechseln:
Code:
cd /usr/ports/x11/nvidia-driver/
Original Makefile kopieren:
Code:
cp -v Makefile Makefile.orig
Makefile editieren mit ee:
Code:
ee Makefile
(ich mag den ee)
Code:
DISTVERSION = 256.53
ändern in die gewünschte Version, 260.19.26 ist Beta!
diff erstellen, um später bequem patchen zu können:
Code:
diff -uN Makefile.orig Makefile > Makefile-nvidia-driver-x86_64-260.19.26.diff
(das ist als Beispiel mein diff für den 260.19.26 Beta)
Nun noch die distinfo aus dem Weg räumen:
Code:
mv -v distinfo distinfo.orig
Eine frische distinfo für die gewünschte nvidia-driver Version wird so erstellt:
Code:
make makesum
Mit passenden erstellten diffs kann man dann zumindest mit portupgrade,
das ja solche kleinen eigenen diff Basteleien, dort wo das Makefile liegt, nicht anpackt,
sehr bequem mit einem kleinen Script nach dem csup sich immer wieder die Ports nach eignen Wünschen umbasteln,
so mache ich das jedenfalls und für mich funktioniert das so.

Einige Einträge auf meinem System,
zum Beispiel habe ich für die Interprozesskommunikation sysctls erhöht,
in der /boot/loader.conf:
Code:
#-------------------------------------------------------------------------------- # nvidia-driver #-------------------------------------------------------------------------------- nvidia_load="YES" kern.ipc.shmseg=4096 kern.ipc.shmmni=4096
Urspünglich ging es da mal um einen GLXBadDrawable Wine Bug,
da es aber mit dem Eintrag bei mir gut lief, habe das seit Jahren schon aus reiner Gewohnheit so.
In /etc/sysctl.conf:
Code:
kern.maxfiles=49312
habe ich die kern.maxfiles erhöht.
__________________
BSD Zockerclub
FreeBSD 9.1-STABLE amd64

Geändert von Fusselbär (02.12.2010 um 16:27 Uhr).
Fusselbär ist offline   Mit Zitat antworten
Alt 02.12.2010, 19:03   #7
kmh
Registered User
 
Registrierungsdatum: Jun 2004
Ort: Paderborn
Beiträge: 182
Hi Fusselbär,

danke für deine Ausführungen, ich habe immer die aktuelle Version der Treiber von der Nvidia-Seite herunter geladen. Aber auch die aktuellen Treiber führen zu genanntem fehler.

Das einzige was ich noch nicht angepasst habe sind deine spezielen Kernel-Einstellungen (ausgenommen des NVidia-Moduls). Aber ich nutze auch gar kein Wine. Es reicht schon wenn nur der Desktop offen ist ....

EDIT:

Ja unter WIndows rennt der Rechner wie eine 1.
@Yamagi: Ich werde es mal testen.
__________________
Glücklich ist der, der den Dingen auf den Grund gehen konnte.

Geändert von kmh (02.12.2010 um 20:00 Uhr).
kmh ist offline   Mit Zitat antworten
Alt 02.12.2010, 19:54   #8
Yamagi
Possessed With Psi Powers
 
Benutzerbild von Yamagi
 
Registrierungsdatum: Apr 2004
Ort: Schleswig-Holstein
Beiträge: 6.598
Yamagi eine Nachricht über ICQ schicken
Du hast den alten Treiber einfach über den neuen gebügelt? Das sollte man bei Hauptversionsupdates nicht machen, da eventuell alte Dateien vorhanden bleiben, was dann zu seltsamen Verhalten führt. Das ist gerade aktuell, da nVidia eine Reihe Dateien umbenannt oder ganz entfernt hat. Mache mal folgendes:
1. Hole dir die README der vor dem Update installierten Version von http://de.download.nvidia.com/XFree86/FreeBSD-x86_64
2. In "Chapter 4. Installed Components" findest du eine Liste aller Dateien, die das Paket installiert. Diese löscht du manuell. Dabei beachtest du, dass beim Installieren bereits vorhandene Versionen zum Teil umbenannt werden, sozusagen als Sicherung. Dateien mit passenden Namen, aber einem Anfang hinter diesen eliminierst du auch.
3. Nun installierst du die aktuelle Version erneut.

Danach geht es dann hoffentlich.
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern.

Yamagi ist gerade online   Mit Zitat antworten
Alt 03.12.2010, 23:08   #9
kmh
Registered User
 
Registrierungsdatum: Jun 2004
Ort: Paderborn
Beiträge: 182
Ich habe es überprüft, die Installierten Dateien sind alle vom Datum der letzten Treiber-Installation. Es sind auch keine weiteren Dateien mit anderer Version zu finden. Die FreeBSD Installation ist auch noch relativ frisch.

NVIDIA-FreeBSD-x86_64-260.19.12
NVIDIA-FreeBSD-x86_64-260.19.21

Sind die beiden einzigen Versionen die installiert wurden. Wobei bei beiden Versionen der Fehler auftritt. Eben hing der Rechner wieder und die Desktop-Effekte waren abgestellt. Der X-Server killt sich wenn ich zwischen den Eingängen meines Monitors hin und her schalte (da ist noch eine Docking-Station dran)
__________________
Glücklich ist der, der den Dingen auf den Grund gehen konnte.
kmh ist offline   Mit Zitat antworten
Alt 15.12.2010, 17:47   #10
kmh
Registered User
 
Registrierungsdatum: Jun 2004
Ort: Paderborn
Beiträge: 182
Fürs Protokoll, bei der neuen Treiber-Version 260.19.29 tritt das Problem nicht mehr auf.
__________________
Glücklich ist der, der den Dingen auf den Grund gehen konnte.
kmh ist offline   Mit Zitat antworten
Antwort


Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus
Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Probleme mit Xorg, schwarzer Bildschirm darki FreeBSD - Installation 26 26.04.2008 20:35
Saubere Migration von IPFW auf PF+ALTQ PatTheMav FreeBSD - Netzwerk 2 02.02.2008 06:38
FreeBSD Samba PDC Howto Highfish Howtos 103 25.09.2006 21:14
"couldn't map interrupt" deleeuw Hardware 11 16.05.2005 17:13
X-Server auf ECS320 Notebook läuft nicht snaketown Hardware 11 23.03.2005 19:53


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:29 Uhr.


Powered by vBulletin (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.