ubuntuusers.de

DKMS

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Inhaltsverzeichnis
  1. Installation
  2. Konfiguration

Wiki/Icons/pci.png Dieser Artikel dient als Ergänzung zu ISDN-Karten/AVM FRITZ!Card PCI. Ab Ubuntu 8.10 Intrepid Ibex muss das zum erfolgreichen Betrieb notwendige Kernelmodul fcpci selbst aus den Quellen übersetzt werden. Dieser Vorgang ist in im genannten Artikel ausführlich beschrieben.

Prinzipiell muss das Kompilieren des Kernelmoduls bei jedem Kernelupdate (manuell) wiederholt werden. Einen Ausweg bietet die Verwendung von DKMS. Über diesem Weg wird das Kernelmodul – falls erforderlich – automatisch neu kompiliert.

Experten-Info:

Empfehlenswert ist zuerst das manuelle Übersetzen (wie im Hauptartikel beschrieben), um das reibungslose Kompilieren und die Nutzung des Kernelmoduls zu testen. Wenn das soweit funktioniert, kann man sich mit der im folgenden beschriebenen Lösung beschäftigen.

Wiki/Icons/synaptic.png

Installation

Neben dem Paket:

  • dkms

Wiki/Vorlagen/Installbutton/button.png

sind zusätzlich die im Hauptartikel unter Vorbereitung erwähnten Pakete erforderlich [1].

Der Quelltext wird in einen Ordner unterhalb von /usr/src/ kopiert. Die Benennung des Unterordners folgt dabei immer dem Schema <modulename>-<version>, also praktisch /usr/src/fcpci-<Version>. Mit <Version> ist hier die Version des Quelltextes gemeint, nicht die Version des installierten Kernels (auch wenn diese hier daran angelehnt ist).

Wiki/Icons/settings.png

Konfiguration

Ubuntu 10.10

  1. Der Quelltext muss mit Root-Rechten [2] in den Ordner /usr/src/fcpci-2.6.34/ entpackt [3] werden.

  2. je nachdem, ob man ein 32- oder 64-Bit System einsetzt, im Ordner /usr/src/fcpci-2.6.34/src/ einen entsprechenden Link anlegen [4]:

    sudo ln -s 32_fcpci-lib.o fcpci-lib.o 

    oder

    sudo ln -s 64_fcpci-lib.o fcpci-lib.o 
  3. Die Datei /usr/src/fcpci-2.6.34/dkms.conf mit Root-Rechten und folgendem Inhalt anlegen [5]:

    PACKAGE_NAME=fcpci
    PACKAGE_VERSION=2.6.34
    
    DEST_MODULE_LOCATION=/extra
    BUILT_MODULE_NAME=fcpci
    BUILT_MODULE_LOCATION=src/
    
    MAKE="'make' -C src/ all"
    CLEAN="'make' -C src/ clean"
    AUTOINSTALL="yes"

Ubuntu 10.04

  1. Der Quelltext muss mit Root-Rechten [2] in den Ordner /usr/src/fcpci-2.6.31/ entpackt [3] werden.

  2. je nachdem, ob man ein 32- oder 64-Bit System einsetzt, im Ordner /usr/src/fcpci-2.6.31/lib/ einen entsprechenden Link anlegen [4]:

    sudo ln -sf 32_fcpci-lib.o fcpci-lib.o 

    oder

    sudo ln -sf 64_fcpci-lib.o fcpci-lib.o 
  3. Die Datei /usr/src/fcpci-2.6.31/dkms.conf mit Root-Rechten und folgendem Inhalt anlegen [5]:

    PACKAGE_NAME=fcpci
    PACKAGE_VERSION=2.6.31
    
    DEST_MODULE_LOCATION=/extra
    BUILT_MODULE_NAME=fcpci
    BUILT_MODULE_LOCATION=fcpci_src/
    
    MAKE="'make' -C fcpci_src/ all"
    CLEAN="'make' -C fcpci_src/ clean"
    AUTOINSTALL="yes"

Wiki/Icons/develop.png

Verwendung von DKMS

Das Kompilieren mittels DKMS wird mit folgenden Schritten getestet (Beispiel für Ubuntu 10.10; ansonsten bitte die Version anpassen):

  1. Mit dem Befehl:

    sudo dkms add -m fcpci -v 2.6.34 

    wird das Kompilieren von fcpci vorbereitet.

  2. Der eigentliche Kompilierungsvorgang wird mit:

    sudo dkms build -m fcpci -v 2.6.34 

    gestartet.

  3. Abschließend erfolgt die Installation des Kernelmoduls:

    sudo dkms install -m fcpci -v 2.6.34 
  4. Nur erforderlich, wenn man das Kernelmodul wieder aus DKMS entfernen möchte:

    sudo dkms remove -m fcpci -v 2.6.34 --all 

Ergebnis

Zukünftig wird nun bei jedem Kernel-Update das Kernelmodul fcpci automatisch neu kompiliert. Beispiel:

...
Richte linux-image-generic ein (2.6.35.27.35) ...
Richte linux-generic ein (2.6.35.27.35) ...
Richte linux-headers-2.6.35-27 ein (2.6.35-27.48) ...
Richte linux-headers-2.6.35-27-generic ein (2.6.35-27.48) ...
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 2.6.35-27-generic /boot/vmlinuz-2.6.35-27-generic
 * dkms: running auto installation service for kernel 2.6.35-27-generic                              
 *       fcpci (2.6.34)...                                                                     [ OK ]
...

  • ISDN-Karten {Übersicht} Übersichtsartikel

  • DKMS - Grundlagen zum Dynamic Kernel Module Support

Diese Revision wurde am 11. April 2012 02:56 von Kuttel Daddeldu erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Hardware, unfreie Software, ISDN

Passwort vergessen?