Kernel compile problem nach update auf gcc 4.0.1-3 (SID)

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
zorn
Beiträge: 697
Registriert: 19.08.2003 00:42:10
Wohnort: Berlin
Kontaktdaten:

Kernel compile problem nach update auf gcc 4.0.1-3 (SID)

Beitrag von zorn » 06.08.2005 23:03:33

Hallo Leute,

nachdem ich wiedermal ein update gemacht hatte und meinen Kernel neu compilieren wollte, stellte sich heraus dass das mit gcc 4.0.1-3 wohl nicht mehr funktioniert. Ein paar i2c Module machen Stress. Nachfolgend die Fehlermeldungen. Weiss jemand Rat?
Übrigens: Die I2C Module hab' ich alle deaktiviert - trotzdem diese Meldung. Ein paar sind wohl fest im Kern?

Code: Alles auswählen

In file included from drivers/i2c/i2c-core.c:29:
include/linux/i2c.h:58: error: array type has incomplete element type
include/linux/i2c.h:197: error: array type has incomplete element type
drivers/i2c/i2c-core.c: In function 'i2c_transfer':
drivers/i2c/i2c-core.c:594: error: type of formal parameter 2 is incomplete
drivers/i2c/i2c-core.c: In function 'i2c_master_send':
drivers/i2c/i2c-core.c:620: error: type of formal parameter 2 is incomplete
drivers/i2c/i2c-core.c: In function 'i2c_master_recv':
drivers/i2c/i2c-core.c:649: error: type of formal parameter 2 is incomplete
make[2]: *** [drivers/i2c/i2c-core.o] Fehler 1
make[1]: *** [drivers/i2c] Fehler 2
make: *** [drivers] Fehler 2

Achso:
System: SID
Kernel: 2.6.11
gcc bisher: 3.2 (glaub ich)

Many thx![/code]
--
kallisti!

Benutzeravatar
Sam
Beiträge: 838
Registriert: 10.09.2002 11:02:45
Wohnort: Wuppertal

Beitrag von Sam » 06.08.2005 23:22:46

Hab ich bei google gefunden:
http://www.ussg.iu.edu/hypermail/linux/ ... /0406.html
Sieht so aus als waerst Du nicht allein. So wie es aussieht funktioniert der patch.
Hoffe das hilft,
Sam

Benutzeravatar
zorn
Beiträge: 697
Registriert: 19.08.2003 00:42:10
Wohnort: Berlin
Kontaktdaten:

Beitrag von zorn » 07.08.2005 00:00:35

Eigentlich perfekt - danke für den Link. Allerdings bin ich zu doof um den Patch zu applien:

patch -p1 <I2C-Patch
patching file include/linux/i2c.h
patch: **** malformed patch at line 5: /* Transfer num messages.

Muss ich die Kommentar lines auskommentieren? Oder irgendwas an dem Patch ändern?

Hier der Link zum Patch: http://www.ussg.iu.edu/hypermail/linux/ ... /0369.html

Konnte schon jemand den Patch usen?

thx
--
kallisti!

crazyed

Beitrag von crazyed » 07.08.2005 08:10:47

Moin,
du hast mit Sicherheit noch alles vom gcc-3.3 auf deiner Kiste und kannst damit recht einfach den Kernel erstellen. Indem du bei configure die Option CC=/usr/bin/gcc-3.3 mit gibst sollte es denn klappen. Das Thema Kernel und gcc-4.0 ist hier schon öfter mal gefallen. Weil der Linuxkernel sooooo groß geworden ist wird die Umstellung wohl noch etwas dauern.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 07.08.2005 12:48:11

Gibt es den Patch nicht noch woanders? Ist bestimmt was beim kopieren schiefgegangen. malformed = missgebildet
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
Sam
Beiträge: 838
Registriert: 10.09.2002 11:02:45
Wohnort: Wuppertal

Beitrag von Sam » 07.08.2005 13:00:59

Den Patch gibt es Gesund wahrscheinlich nur im mbox Format. Ich vermute, dass hypermail den patch durch seine html Formatierung zerschossen hat. Leider gibt es
ftp://ftp.uwsg.iu.edu/pub/mail.archive/kernel/ irgenwie nicht mehr, da waren die mbox archive mit den patches im txt Format. Gerade bei Patchlastigen Listen macht es sinn, die auch irgenwo im Originalformat zu formatieren.
Aber Du kannst sicher dem Menschen mit dem patch eine mail schreiben, damit er Dir den Patch zu schickt. Ich wette dan applied der patch auch.
Lg,
Sam

Benutzeravatar
Sam
Beiträge: 838
Registriert: 10.09.2002 11:02:45
Wohnort: Wuppertal

Beitrag von Sam » 07.08.2005 13:38:18

So, jetzt hab ich mal ein Bisschen Datentransformation betrieben und den patch (hoffentlich) richtig formatiert rekonstruiert.
Schau mal, ob er geht:
http://teletubbie.hentges.net/temp/i2c_xfer.patch
LG,
Sam

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 07.08.2005 13:39:59

Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
zorn
Beiträge: 697
Registriert: 19.08.2003 00:42:10
Wohnort: Berlin
Kontaktdaten:

Beitrag von zorn » 11.08.2005 02:11:04

Das mit dem Patch haut irgendwie nicht hin - ist mir mittlerweile aber auch egel. Hab' den Symlink unter /usr/bin auf gcc-3.3 zeigen lassen und schwupp compiliert alles wieder.

@crazyed
. Indem du bei configure die Option CC=/usr/bin/gcc-3.3 mit gibst sollte es denn klappen.
Wie kann ich das machen? Direkt im Makefile ändern? Oder kann ich das eleganter als Option mitgeben? Konnte leider nicht rausbekommen wie...
Sollte ich das hinbekommen - werd' ich das mit dem Patch auch nochmal bei Gelegenheit angehen...

Vielen Dank jedenfalls für die Hilfe.
--
kallisti!

crazyed

Beitrag von crazyed » 11.08.2005 06:30:14

Moin,
kommt drauf an wie du den Kernel baust.
Bei "normalen" Softwarepaketen geb ich die Option als ./configure --bla-foo mit an.
Wenn ich Debianpakete erstelle unter <entpackter Tarball>/debian/rules nach
"# Add here commands to configure the package"

Allerdings sollte eine Änderung wohl in der Makefile selbst möglich sein und dann auch gleich CPP mit anpassen. Allerdings hab ich das noch nie bei so etwas grossem wie einem Kernel probiert.

Meistens gibt aber der Befehl ./configure --help erschöpfende Auskunft über mögliche Optionen.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 11.08.2005 09:21:55

Es kann gaz gut sein das Patch nicht so ohne weiters funktioniert. Da das Patchfile mit einem Kernel 2.6.11-rc4 erstellt worden ist. Erst mit --dry-run testen.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Antworten