Probleme beim Kompilieren von Kernel 2.6.27.1

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
GambaJo
Beiträge: 73
Registriert: 21.08.2008 19:54:35

Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von GambaJo » 17.10.2008 00:08:16

System: Debian testing

Code: Alles auswählen

donkey:/usr/src# uname -a
Linux donkey 2.6.27 #2 SMP PREEMPT Sun Oct 12 20:30:05 CEST 2008 x86_64 GNU/Linux
Habe den neuen Kernel so kompiliert, wie bisher auch:

Code: Alles auswählen

make-kpkg linux-image --initrd --revision=27.1.2
cd ..
dpkg -i linux-image-2.6.27.1_27.1.2_amd64.deb
Bekomme dann immer folgenden Fehler:

Code: Alles auswählen

dpkg: Fehler beim Bearbeiten von linux-image-2.6.27.1_27.1.2_amd64.deb (--install):
 Versuche, »/lib/firmware/ess/maestro3_assp_minisrc.fw« zu überschreiben, welches auch in Paket linux-image-2.6.27 ist
dpkg-deb: Unterprozess paste mit Signal (Datenübergabe unterbrochen (broken pipe)) getötet
Running postrm hook script /sbin/update-grub.
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.27
Updating /boot/grub/menu.lst ... done

Fehler traten auf beim Bearbeiten von:
 linux-image-2.6.27.1_27.1.2_amd64.deb

Benutzeravatar
George Mason
Beiträge: 1175
Registriert: 01.03.2006 22:55:19
Lizenz eigener Beiträge: MIT Lizenz

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von George Mason » 17.10.2008 01:24:52

Beim installieren versucht das dpkg, eine zu deinem Kernelpaket dazugehörige Firmware-Datei zu schreiben, da diese bereits durch das installierte Kernelpaket existiert, bricht der Vorgang ab, damit dein Paketsystem nicht in einen inkonsistenten Zustand gerät. dpkg tut also eigentlich genau, was es soll.

Edit: Das Problem ist übrigens neu mit Kernel 2.6.27.
http://kernelnewbies.org/LinuxChanges#h ... a0f0a60047
Firmware is usually compiled with each driver. For some reasons (mainly, licensing reasons), distributing firmware is not allowed by some companies and some drivers have also supported loading external firmware for a long time. But even if the firmware compiled and shipped with each driver is redistributable, is not libre software, and some people thinks that this breaks the GPL. It also has some disadvantages for distros.

In 2.6.27, the firmware blobs have been moved from the drivers' source code to a new directory: firmware/. By default, the firmware won't be compiled in the kernel binary, or in the modules. It's installed in /lib/firmware when the user types "make modules_install", and drivers have been modified to call request_firmware() and load the firmware when they need it. There's also a configuration option that will compile the firmware files in the kernel binary image, like it was done previously.
Wäre einen Versuch wert.

GambaJo
Beiträge: 73
Registriert: 21.08.2008 19:54:35

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von GambaJo » 17.10.2008 08:22:58

Ok, verstehe. Wie kann ich das nun umgehen. Im Prinzip würde es ja vermutlich reichen, wenn der den Ordner mit der Firmware nicht kompiliert, oder? Wenn ja, wie stelle ich das an?

Benutzeravatar
George Mason
Beiträge: 1175
Registriert: 01.03.2006 22:55:19
Lizenz eigener Beiträge: MIT Lizenz

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von George Mason » 17.10.2008 11:33:25

Wenn du die Firmware nicht brauchst, kannst du den Zweig einfach aus der Kernel-config rausnehmen. Wenn du sie doch brauchst, kannst du sie fest mit einkompilieren.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von Spasswolf » 17.10.2008 11:37:38

Wenn du die firmware brauchst kannst du das Paket auch mit --force-overwrite installieren, dann wird die Datei überschrieben.

GambaJo
Beiträge: 73
Registriert: 21.08.2008 19:54:35

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von GambaJo » 17.10.2008 11:49:39

George Mason hat geschrieben:Wenn du die Firmware nicht brauchst, kannst du den Zweig einfach aus der Kernel-config rausnehmen. Wenn du sie doch brauchst, kannst du sie fest mit einkompilieren.
Bei vielen von den Optionen bei der Firmware bin ich mir nicht sicher, und lasse die Einstellung so, wie sie war um auf Nummer sicher zu gehen.
Spasswolf hat geschrieben:Wenn du die firmware brauchst kannst du das Paket auch mit --force-overwrite installieren, dann wird die Datei überschrieben.
Ist das ein Parameter von make-kpkg?

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von Spasswolf » 17.10.2008 11:55:32

Ist das ein Parameter von make-kpkg?
Nein, von dpkg.

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von uwepr » 21.10.2008 14:19:23

Seid gegrüßt!
Habe heute 2.6.27.2 heruntergeladen, folgendes Problem:

Code: Alles auswählen

  LD      sound/usb/built-in.o
  LD      sound/usb/caiaq/built-in.o
  LD      sound/usb/usx2y/built-in.o
  MK_FW   firmware/n.gen.S
make[2]: *** Keine Regel vorhanden, um das Target »n/n«,
  benötigt von »firmware/n.gen.o«, zu erstellen.  Schluss.
make[1]: *** [firmware] Fehler 2
make[1]: Leaving directory `/usr/src/linux-2.6.27.2'
make: *** [debian/stamp-build-kernel] Fehler 2
debian-uwe:/usr/src/linux-2.6.27.2#                   
Konfiguration (make menuconfig):

Code: Alles auswählen

(/sbin/hotplug) path to uevent helper                            │ │
  │ │    [ ] Select only drivers that don't need compile-time external fir│ │
  │ │    [ ] Prevent firmware from being built                            │ │
  │ │    -*- Userspace firmware loading support                           │ │
  │ │    [ ]   Include in-kernel firmware blobs in kernel binary          │ │
  │ │    (n)   External firmware blobs to build into the kernel binary    │ │
  │ │    (n) Firmware blobs root directory                                │ │
  │ │               

Bei " (n) External firmware blobs to build into the kernel binary │ │
│ │ (n) Firmware blobs root directory │ │
"
läßt sich nichts einstellen.

1.Frage: neuen thread aufmachen?
2.Frage: Was kann ich tun?

Viele Grüße! Uwe Pr.
squeeze/fluxbox

Benutzeravatar
George Mason
Beiträge: 1175
Registriert: 01.03.2006 22:55:19
Lizenz eigener Beiträge: MIT Lizenz

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von George Mason » 21.10.2008 15:09:13

1. Ja

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von Spasswolf » 21.10.2008 15:24:18

Da der neue Thread noch nicht da ist Antworte ich mal hier:
Uwe Pr. hat geschrieben:Bei " (n) External firmware blobs to build into the kernel binary │ │
│ │ (n) Firmware blobs root directory │ │
"
läßt sich nichts einstellen.
Drück mal Return, dann kannst du eine Datei angeben.

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von uwepr » 21.10.2008 16:17:44

@George Mason: nicht mehr nötig
@Spasswolf : Danke, hat funktioniert!
Viele Grüße! Uwe Pr.
squeeze/fluxbox

Benutzeravatar
lottikarotti
Beiträge: 86
Registriert: 02.04.2008 16:23:03
Wohnort: /bin/lotti
Kontaktdaten:

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von lottikarotti » 21.10.2008 19:41:43

Ich hatte ein ähnliches Problem beim Installieren vom 2.6.27.2er Kernel.. hatte
vorher den 2.6.27er drauf. Gelöst habe ich es ganz einfach dadurch, dass ich den
2.6.27er vorher komplett deinstalliert habe (auch wenn schon gelöst).

Mit freundlichen Grüßen, lotti.
Zuletzt geändert von lottikarotti am 10.11.2008 16:13:41, insgesamt 2-mal geändert.
$ uname -r
2.6.28.3-lotti

Wer "nämlich" OHNE "h" schreibt ist dämlich ;-)

Athlux
Beiträge: 543
Registriert: 16.05.2004 22:15:56

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von Athlux » 21.10.2008 21:51:05

Uwe Pr. hat geschrieben: Konfiguration (make menuconfig):

Code: Alles auswählen

(/sbin/hotplug) path to uevent helper                            │ │
  │ │    [ ] Select only drivers that don't need compile-time external fir│ │
  │ │    [ ] Prevent firmware from being built                            │ │
  │ │    -*- Userspace firmware loading support                           │ │
  │ │    [ ]   Include in-kernel firmware blobs in kernel binary          │ │
  │ │    (n)   External firmware blobs to build into the kernel binary    │ │
  │ │    (n) Firmware blobs root directory                                │ │
  │ │               

Bei " (n) External firmware blobs to build into the kernel binary │ │
│ │ (n) Firmware blobs root directory │ │
".
Hast du zufällig make oldconfig aufgerufen und schön immer auf n gedrückt. Das verursacht nämlich genau diesen Fehler. ;)
Gruß Athlux

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Re: Probleme beim Kompilieren von Kernel 2.6.27.1

Beitrag von uwepr » 22.10.2008 08:57:48

@Athlux: ja, habe make oldconfig gemacht und [n] gedrückt. Nachdem ich den Fehler bekam, habe ich dann noch make menuconfig gemacht und mir angeschaut, was da eingestellt war. Dann kam Spasswolf's Tip, mit dem habe ich es dann gelöst.
Viele Grüße! Uwe Pr.
squeeze/fluxbox

Antworten