Visualizzazione dei risultati da 1 a 3 su 3

Discussione: help lfs

  1. #1

    help lfs

    allora.. vediamo se ho capito bene com'è che funziona sta toolchain:
    1)installo le binutils (perchè hanno assemblatore e linker che sono alla base di ogni sorgente da compilare)
    2)installo il gcc ossia il compilatore ma, visto che ha bisogno, oltre delle binutils, anche delle glibc sono costrtto a utilizzare le librerie dell'host
    3)installo le librerie del kernel che sono necessarie per la compilazione delle glibc
    4)installo le glibc utilizzando il nouvo gcc e le binutils
    5)a questo punto avendo installato le glibc posso ricompilare gcc utilizzando tutte le librerie del nuovo sistema...

    seguendo la mia vena anticonformista sto facendo il tutto con le ultime versioni dei suddetti pacchetti (chiaramente quelle stabili) e quindi trovo qualche differenza sintattica nei parametri di configurazione. Per quanto riguarda il punto 5 sapete che parametro passare nel configure per indicare quale sia il linker da utilizzare? mettendo --with-sysroot non basta per fargli capire dove si trova la basepath per trovare gli eseguibili?
    Ci vuole un caos dentro di se per generare una stella danzante... Nietzsche
    MyBloG:http://mastinopalemmitano.blogspot.com/

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    746
    Per quanto riguarda il punto 5 sapete che parametro passare nel configure per indicare quale sia il linker da utilizzare? mettendo --with-sysroot non basta per fargli capire dove si trova la basepath per trovare gli eseguibili?
    no, perchè ./configure non modifica i sorgenti, crea solo i vari makefile

    PATH=/tools/bin:/bin:/usr/bin, questo assicura che vengano utilizzati gli eseguibili del nuovo sistema non appena saranno installati

    al primo bootstrap di gcc, esso si appoggia completamente all'host, così fanno anche le binutils e le *libc.

    tramite uno spec file (che controlla il comportamento di gcc: quali programmi invocare, quali opzioni usare per quei programmi, etc..) viene detto a gcc di usare /tools/lib/ld-linux.so.2 come linker dinamico per i programmi che verranno compilati

    d'ora in avanti verrà usato /tools/bin/ld come linker e verranno usate solo le librerie in /tools/lib

    poichè nei sorgenti di gcc viene definito come linker di default (...) /lib/ld-linux.so.2, sarebbe necessario creare un nuovo spec file per dirgli di usare /tools/lib/ld-linux.so.2 per compilare i nuovi pacchetti...è tuttavia preferibile modificare i sorgenti stessi di gcc, tramite questa patch, che sostituisce /lib/ld-linux.so.2 con /tools/lib/ld-linux.so.2, per essere sicuri che come linker dinamico venga usato quest'ultimo
    seguendo la mia vena anticonformista sto facendo il tutto con le ultime versioni dei suddetti pacchetti (chiaramente quelle stabili) e quindi trovo qualche differenza sintattica nei parametri di configurazione.
    se è la prima volta che provi ad installare un sistema da zero, attieniti al libro (la versione stabile); se proprio non puoi fare a meno delle ultime versioni dei pacchetti usa la versione di sviluppo

    in ogni caso evita di usare gcc-4.1.0 perchè non è stabile...o meglio, il compilatore lo è, ma i sorgenti di alcuni programmi che trovi in giro per la rete (un esempio su tutti: inkscape), secondo le varie ridefinizioni della sintassi applicate in questa versione di gcc, no

  3. #3
    gentilissimo!! comunque dopo vari tentativi tristemente falliti ho deciso di cambiare il gcc (provo la versione 4.0.3) che oltre tutto dovrebbe essere la stessa che utilizza ubuntu 5.10 e, fino ad esso non ho mai avuto problemi di compatibilità con nessun sorgente. Ho provato inoltre ad utilizzare le glibc 2.4 ma la compilazione si ferma quando mawk prova ad interpretare degli script... vengono fuori errori di sintassi; facendo una googlata ho visto che è un problema dell'interprete che non segue bene gli standard e non delgi script in sé: visti i problemi mi appropinquo ad utilizzare la versione 2.3.6. Un'altra domanda: non esistono delle toolchain di compilazione già pronte in rete?? E' solo una curiosità
    Ci vuole un caos dentro di se per generare una stella danzante... Nietzsche
    MyBloG:http://mastinopalemmitano.blogspot.com/

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.