hjslfs-1.4.10 ist offline

  • Nu hab ichs gewagt :]


    Ne erste 1.4er Pre ist online .


    Neu hinzugekommen ist die Möglichkeit , CFLAGS zu definieren .
    Beim Host läßt sich Name und Pfad getrennt einstellen ( eines vorhandenen zu verwendenden ) und auch einstellen , ob nach dem Hostbuild gestrippt werden soll .


    Ist schließlich nicht nötig , wenn man den eh nach dem build des eigentlichen Systems löscht , es sei denn , man hätte zu wenig Platz auf der Zielpartition .


    Gestrippt wird generell nur noch , was im vorhergehenden Buildscript erstellt wurde - am rest ist schließlich auch nichts mehr zu strippen - kostet nur unnötig Zeit , den ganzen Kruscht zu finden .


    Ne Übersicht über sämtliche Features werd ich hier in Kürze hinzufügen ...


    Nu muß ich noch n paar Feinheiten begradigen und n Readme schreiben :rolleyes:


    Wer testet freiwillig ? :gap


    HJS


    EDIT : Readme angehängt

  • Während ich so das README/HOWTO in Angriff genommen habe , fiel mir doch glatt beim Texten noch n Kinken beim Sourcenholen auf .


    wget ist bei der Kombination von Optionen ja etwas eigen .
    So war die Funktion "Sourcen immer überschreiben" nicht wirklich "in Funktion" ... fixed


    Die logische Struktur/Reihenfolge der Menüeinträge ist noch in Arbeit .


    Bisher habe ich nur die Auswahl der Sourcen auf den zweiten Platz hinter die Partitionierung gehievt - was ja auch Sinn macht .


    Jetzt wird auch nicht mehr direkt zu Beginn nach der gewünschten Liste gefragt , die Frage kommt erst bei Aufruf des Menüeintrages .


    Daher sind jetzt auch drei Plausibilitätsprüfungen drin .


    1. Die Zielpartition muß existieren , sonst gehts definitiv nicht weiter
    2. Wenn keine Sourcenliste gewählt wurde gehts ebenfalls retour
    3. Wurde Binaryinstall gewählt , aber n Fehler bei der DEP erkannt , entscheidet der geneigte User , obs denn trotzdem weitergehen soll oder er n Korrekturversuch unternehmen will .


    Bei 1.&2. müssen die Scripte zwingend ne Bauchlandung machen , bei 3. könnte man auch Glück haben , daß nur n DEP File nich ganz sauber ist ...


    HJS

  • Zitat

    Original von hjs
    Die logische Struktur/Reihenfolge der Menüeinträge ist noch in Arbeit .


    Der Teil ist nu erledigt .


    Die Optik der Gesamtübersicht hab ich noch etwas strukturiert - nu noch besagtes Readme fertigstellen ...


    Dann kann ich mich um die eigentlichen Buildscripte kümmern ...


    HJS

  • Nüdele ;)


    Hab im ersten Beitrag mal das Readme untergebracht .


    Da es etwas länger wurde , als gequetschte Datei .


    Falls ich mich gar zu unverständlich ausgedrückt habe , ist sachliche Kritik ausnahmsweise zugelassen ;)


    - aus Addon Setup und Install je nen Eintrag gekickt - die waren redundant .
    - "Reset" in Addons Setup an Änderungen seit der 1.2.x angepaßt


    Nu noch ne Featurelist für den Schnellüberblick ergänzen und ne Option für den Kernel fiel mir da noch ein .


    Falls dann kein Kinken mehr auftaucht , verschwindet das pre ... :]


    HJS

  • Oups - examples vergessen ... :gap


    Nu sind se drinne :)


    Zitat

    Original von hjs
    Nu noch ne Featurelist für den Schnellüberblick ergänzen und ne Option für den Kernel fiel mir da noch ein .


    Falls dann kein Kinken mehr auftaucht , verschwindet das pre ... :]


    Und n Check auf die gcc version is noch sinnig .
    Seit der 4.3er benötigt der ja mpfr und gmp ... sollten dann ja auch gebuildet werden ... :gap


    HJS

  • Und noch ein Schrittchen ...


    Den erweiterten Anforderungen des gcc ab 4.3 ist nun Rechnung getragen .


    Die Ergänzung des zu buildenden Kernels um AUFS ( ab 2.6.27 ) ist bereits drin , allerdings fehlt den derzeit verfügbaren HostCDs git , um die Sourcen ziehen zu können .


    Da den Scriptstart abzubrechen - und im Falle von ausreichend RAM curl und git manuell im Host zu bauen ist ja nicht wirklich elegant .


    Daher werd ich dann man nen passenden Host schrauben ...


    HJS

  • Mein lieber Scholli ...


    Nu lassen sich die verschiedenen Features auch wieder in den Submenüs konfigurieren ... :rolleyes:


    Will man Binaries installieren , werden nu auch tatsächlich die verfügbaren Addon-Binaries mit angezeigt .


    Wenn die Tests die meine DEV Maschine gerade beschäftigen erfolgreich verlaufen , isses denn endlich soweit ...


    ... und ich kann mich den eigentlichen Buildscripten widmen :]


    HJS

  • Zitat

    Original von hjs
    Mein lieber Scholli ...
    [...]
    Wenn die Tests die meine DEV Maschine gerade beschäftigen erfolgreich verlaufen , isses denn endlich soweit ...
    [...]


    Oder sie zeigen , daß man eine einzige Ziffer nicht eingetragen hat - mit katastrophalen Folgen ... :whatever


    Nu wird der Host auch wieder gebaut .


    Da die file und shadow Sources der [noch] aktuellen Liste nicht mehr so ohne weiteres zu haben sind , hab ich se mal auf meiner Page deponiert ...


    HJS

  • Sodele .


    Wies ausschaut , hab ich alle eingebauten Fehler auch wieder ausgebaut :gap


    Zumindest liefen ein TestBuild sowie ein BinInstall komplett durch - ein gutes eichen :]


    Daher nenn ich die jetzt mal 1.4.0 und damit stable :)


    HJS

  • Ich versuche auch gerade die 1.4.0.1 zu installieren, doch an irgendeiner Stelle läuft bei mir irgendwas schief. Ich konnte leider noch nicht herausfinden was.


    Hier mal eine Auflistung was passiert:


    - CD bootet
    - 1.4.0.1 wird ausgewählt und geladen
    - Konfiguration lässt sich ohne Probleme vornehmen
    - HDD wird formatiert
    - Sourcen werden runtergeladen
    - Es wird einiges kompiliert
    - Rechner macht einen Reboot, startet aber nicht von der HDD


    Ich hab nun (nach dem insgesamt dritten Versuch) nochmal mit der CD gestartet und mir die HDD gemountet. Dort sind jetzt nur ein paar Verzeichnisse zu sehen, und zwar


    - hjslfs
    - lost+found
    - packages
    - tools
    - usr
    - var


    Zusätzlich gibt es noch diese Dateien im Root
    - etc (enthält anscheinend das init Script)
    - root (scheint die .bashrc zu sein)
    - sbin


    In den Verzeichnissen selbst sind mitunter auch Dateien enthalten, welche eigentlich ein Verzeichnis sein sollten und welche auch den Inhalt von anderen Dateien haben.


    Beim ersten Versuch wollte ich auch gcc-4.3.3 nutzen, wo aber der configure fehlgeschlagen ist. Dort ist hinter der ersten Zeile ein "echo" reingerutscht, dieses konnte ich im Script aber nicht finden. Bei gcc-4.2.3 trat das zwar nicht auf, dafür aber das oben beschriebene Verhalten.


    Edit: An welcher Stelle wird den die Ordnerstruktur im Dateisystem angelegt? Dort könnte es bei mir ja evtl. hängen beim kurzen durchgucken der Scripte hab ich da noch nichts zu gefunden.


    Edit 2: Hab gerade mal einen neuen Versuch gestartet, dieses mal aber vorher die HDD per Hand formatiert und dann die Ordnerstruktur angelegt. Vom Script lasse ich die HDD nun natürlich ncht formatieren. Mal sehen was passiert ;)

  • Nächster Versuch ist durch, leider auch keine großartigen Veränderungen, nur das die Dateien, die eigentlich Ordner sein sollten, jetzt in den Ordnern mit dem richitgen Namen liegen.


    Edit: Weiter gehts in der Fehlersuche ;) Und zwar gehen die Fehler bei binutils-pass1 schon los. Hier mal ein Auszug aus der bintils-pass1.log



    Das scheint das gleiche Problem zu sein, welches ich oben schon mit gcc-4.3.3 beschrieben habe. Es mogelt sich irgendwo ein "echo" beim configure dazwischen, dadurch schlägt dann das configure fehl, es wird kein Makefile erstellt und dementsprechend nichts kompiliert.


    gcc-4.2.3 kompiliert dann als nächstes durch und installiert sich in /tools
    Die folgenden Pakete laufen dann größtenteils im configure wieder vor die Wand mit der Meldung:


    Code
    checking for gcc... gcc
    checking for C compiler default output... a.out
    checking whether the C compiler works... configure: error: cannot run C compiled programs.
    If you meant to cross compile, use `--host'.
    echo $?:$LINENO>>$HJSLFSLOG
    ++ echo 1:8
    make


    Edit2: Den einzigen großartigen Unterschied den ich in den binutils und gcc Scripten für die verschiedenen Versionen ausmachen konnte, ist das in der Scripts für die älteren Versionen das configure in einer Zeile geschrieben ist, und bei den neueren per \ auf mehrere Zeilen aufgeteilt wird. Genau da wird wahrscheinlich das Logging mit dem "echo" zwischen hauen.


    Edit3: Die Ursache habe ich nun gefunden. Es wird an irgendeiner Stelle im Script in jede zweite Zeile etwas fürs Logging eingefügt, dadurch wird natürlich in einigen Scripts das configure auseinander gerissen. Resultat ist es läuft nicht mehr. jetzt mus ich ihm das nur noch irgendwie abgewöhnen.


    Hier mal ein Beispiel



    Edit4: Ich hab nun in /hjslfs/tools/logging.awk oben logging auf 0 gesetzt, die Buildscripte wurden jetzt ohne die zusätzlichen Zeilen erstellt und er baut nun erstmal wieder, mal sehen ob diesmal alles durchläuft, oder ob das nun irgendwelche Nebenwirkungen hat.

  • Ein Stück weiter bin ich damit nun schonmal, allerdings ist gcc-4.3.3 trotzdem fehlgeschlagen weil mpfr-2.4.1.tar.bz2 nicht gefunden wurde.


    Das Logging funktioniert, wie zu erwarten war, nicht mehr.


    Die logging.awk passend abzuändern hab ich leider auch nicht hinbekommen.

  • Wenn man bei der Auswahl die Versionen eingestellt lässt, welche Standardmäßig ausgewählt sind läuft es sauber durch.
    Beim ganzen hin und her sind mir diese Sourcen aufgefallen, die das Script nicht automatisch runterladen konnte:
    mpfr-2.4.1.tar.bz2
    perl-5.10.0.tar.gz
    gpm-1.20.6.tar.bz2
    gmp-4.2.4.tar.bz2


    Bei der 1.2 wurde ja von jedem Paket eine Liste geschrieben, welche Dateien installiert wurden. Gibt es das so nicht mehr? Auch die Möglichkeit Binary Pakete zu erstellen finde ich nicht mehr.

  • Ui - kaum ist man mal ne Weile verhindert , schon häufen sich die Fragen :rolleyes:


    Die gcc-4.3.3 und/oder binutils-2.19.1 Geschichte :


    Ich habe bewußt die jeweils älteren Versionen als Default in der Liste , da ich nicht herausfinden konnte , warum diese Versionen ne Bauchlandung machen .


    Wenn ich nicht gerade erblindet bin , entsprechen die Buildscripte exakt dem Book , führen aber leider nicht wirklich zum Erfolg .


    Ich habe in diversen Tests keine der beiden Versionen in beliebiger Kombination zum Rennen gebracht .


    Bei binutils hab ich auch mal die 2.19.51 probiert - mit dem gleichen Ergebnis .


    Daher ist es sinnig , zumindest in diesen beiden Punkten die Vorgabe nicht zu ändern .


    Bei binutils ist ja mittlerweile die 2.20 am Start , bei gcc der 4.4.2 - wenn ich denn mal wieder etwas mehr Zeit habe ... und ich die aktuellen Sourcen für X automatisch generieren kann .... :)


    Binary Build in Punkt 5 Basemenü : Packaging Optionen - steht auch so im README ;)


    HJS

  • binutils 2.19 compiliert mit gcc-4.4.2 und glibc-2.10.1 ; hat zumindest bei mir hingehaun.

  • Zitat

    Original von wirbel
    binutils 2.19 compiliert mit gcc-4.4.2 und glibc-2.10.1 ; hat zumindest bei mir hingehaun.


    Dann wirds mit dem Nachbarn ( der 2.20 ) vielleicht auch klappen ... :)


    Demnächst ....


    HJS

  • Zitat

    Original von Maniac
    Beim ganzen hin und her sind mir diese Sourcen aufgefallen, die das Script nicht automatisch runterladen konnte:


    mpfr-2.4.1.tar.bz2
    perl-5.10.0.tar.gz
    gpm-1.20.6.tar.bz2


    Die liegen nicht mehr an der Stelle - falls ich die noch auf meiner Dev Maschine hab , leg ich die auf meine HP .


    Zitat


    gmp-4.2.4.tar.bz2


    die is aber da ...



    Bei der 1.2 wurde ja von jedem Paket eine Liste geschrieben, welche Dateien installiert wurden. Gibt es das so nicht mehr? Auch die Möglichkeit Binary Pakete zu erstellen finde ich nicht mehr.[/quote]


    Letzteren Teil hatte ich ja bereits beantwortet ;)


    Ersteres passiert nur , wenn der BinaryBuild aktiviert wurde - sonst hab ich da keine Verwendung für gesehen .


    HJS

  • Da der Build mit der aktuellen ( noch nich funzenden ! ) Liste ( 120110 ) noch im Host ne Bauchlandung macht , hab ich doch mal n Auge auf die LFS Page riskiert ...


    ... und gesehen , daß die Jungs erst binutils-pass2 fahren und dann gcc-pass2 - vielleichts hilfts ja :rolleyes:


    Daher war ne kleine Korrektur im "Management" der Scripte nötig - Done :)


    HJS

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!