Toon posts:

[BC3] linux kernel 2.4 --> make bzImage lukt niet

Pagina: 1
Acties:
  • 135 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
ik ben een newbie en heb sinds van de week redhat 7.0 tot mijn beschikking. ik wilde de kernel updaten, heb alle stappen gevolgd, maar make bzImage of zImage lukt niet. hij zegt: control reaches end of non-void function, dan krijg ik een error 1
iemand die me kan helpen?

  • Bigs
  • Registratie: Mei 2000
  • Niet online
Kwam dat niet door de brakke gcc die bij RH7 zat? (dat waar mr. Torvalds himself zelfs kwaad over was)

Verwijderd

zou heel goed kunnen!
Kan ook zijn dat-ie de rest van de packages niet geupdate heeft die nodig zijn voor kernel 2.4. Zie ook de redhat-site eh

Verwijderd

Topicstarter
op de redhat site bieden ze kernel 2.4 nog niet aan. ik heb ''s gekeken en ik heb een aantal packages die niet genoeg up-to-date zijn. dit zijn:
util-linux, modutils en e2fsprogs
edit: ohja en op de doos staat: kernel 2.4 ready

  • mth
  • Registratie: Mei 2000
  • Laatst online: 05-02-2025

mth

control reaches end of non-void function
Klinkt als een compile probleem: geen "return" gevonden in een functie die een waarde terug moet geven. Ik zou proberen de kernel te compileren met een andere versie van gcc, bij voorkeur egcs 1.1.2 (gcc 2.91.x dacht ik) of gcc 2.95.x. Ik heb ergens gelezen dat een van die versies ook op de RedHat 7.0 CDs staat, in package "kgcc".

"This is the noise that keeps me awake."


Verwijderd

Topicstarter
ik heb nu 2.96. is deze nieuwere versie dan minder goed dan oudere versies?

Verwijderd

je moet gcc 2.95.2 hebben om je kernel stabiel te compilen

  • Ritch
  • Registratie: December 1999
  • Laatst online: 19-08 11:10
Op donderdag 29 maart 2001 13:51 schreef r3b00t het volgende:
je moet gcc 2.95.2 hebben om je kernel stabiel te compilen
2.95.2 is ook niet helemaal zeker, 2.91.66 raden ze aan voor een goeie werking...

Verwijderd

Topicstarter
eh ik heb net van de redhat site egcs 1.1.2 gedownload en die rpm gedaan. nu staat ie er maar hoe maak ik deze nu de default compiler?

Verwijderd

Topicstarter
weet iemand hoe ik deze compiler installeer??
ik heb gewoon rpm -ivh gedaan en nu staat ie in /usr/lib/gcc-lib
wat moet ik verder nog doen? ik ben echt newbie :(

Verwijderd

Als je gcc er niet op hebt staan dan is egcs sowieso de default compiler.

Als gcc er wel op staat kun je een aantal dingen doen.

je kunt de Makefile(s) van het te compileren programma veranderen en de waarde waar de compiler wwordt geinitialiseerd op gcc veranderen in kgcc.

Je kunt ook zorgen dat de volgende variabele geexporteerd wordt (CC = kgcc)
Ofwel met het volgende commando:
code:
1
export CC="kgcc"

Vervolgens kun je controleren of ie het goed doet door hetvolgende commando in te tikken:
code:
1
echo $CC

Dit moet dus de string "kgcc" (zonder aanhalingstekens) terug geven.
Deze export ben je na een reboot dus wel kwijt. Als je het permanent wil maken dan zul je de veriabele in je bash script op moeten nemen (~/.bashrc).

Verwijderd

Topicstarter
ok bedankt! ik heb die stappen opgevolgd, ook de makefile veranderd maar nu is die warning weg maar de error 1 blijft.
hij ziet er zo uit:

make: *** [init/main.o] Error 1

wat kan dit zijn??

Verwijderd

Topicstarter
niemand een idee? ik heb alle bovenstaande adviezen al opgevolgd

  • Expander
  • Registratie: Februari 2001
  • Niet online
Ik had dit ook. Het ligt aan ld. De versie die ik heb is 2.11.90.0.1. De versie die wordt aanbevolen in de Changes 2.9.1.0.25.

De oplossing is om in de arch/i386/boot/Makefile alle ''-oformat'' (na $(LD) ...) te veranderen in ''--oformat''. Dit i.v.m. een andere command-line syntax.
Tenminste ik denk dat het zo was..

Voor mij werkte alles hierna perfect...

Expanding the inexpandable


Verwijderd

Topicstarter
weetje dat heb ik al gedaan!
ik heb met search jouw ''eenzame'' topic gevonden. echter het werkt dan nog steeds niet :(
toch bedankt!

Verwijderd

Post anders eens de volledige foutmelding, anders kan waarschijnlijk niemand je verder helpen.

Ik heb nog nooit meegemaakt dat zo''n foutmelding uit slechts één regeltje bestond.

Verder heb je na een foutieve poging toch wel een "make clean"of "make proper" gedaan he, voordat je het opnieuw probeerde?

(denk eraan dat je na een make proper opnieuw alles moet configureren)
Pagina: 1