A voir également:
- Linux from scratch
- Télécharger scratch - Télécharger - Éducatifs
- Win setup from usb - Télécharger - Utilitaires
- Linux mint 32 bits - Télécharger - Systèmes d'exploitation
- Diskinternals linux reader - Télécharger - Stockage
- Linux live usb creator - Télécharger - Outils Internet
67 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
8 août 2009 à 09:23
8 août 2009 à 09:23
Salut,
Ne serais ce pas identique de démarrer sur une image Arch ou Debian minimale et d'y compiler le dernier noyaux
Le plaisir de te casser la tête de faire de A à Z, tu le laisses à qui?
Tu parle de PDF depuis le site de LFS ?!
Ne serais ce pas identique de démarrer sur une image Arch ou Debian minimale et d'y compiler le dernier noyaux
Le plaisir de te casser la tête de faire de A à Z, tu le laisses à qui?
Tu parle de PDF depuis le site de LFS ?!
Utilisateur anonyme
9 août 2009 à 02:11
9 août 2009 à 02:11
Re,
bon, quelque chose ne colle pas :(
Partitionnement et création d'un point de montage d'un système de fichiers ext3 pas de problèmes.
Il est monté dans /media/LFS/
ensuite:
"Les paquets et les correctifs téléchargés doivent être stockés quelque part où ils seront facilement disponibles,....."
"Vous pouvez utiliser le répertoire $LFS/sources"
"Pour créer ce répertoire, lancez, en tant qu'utilisateur root, avant de commencer la session de téléchargement :"
(ha?bon, ok il doit être créé sur ma racine à moi et pas encore sur la partition d'installation.....)
"Donnez le droit d'écriture et le droit sticky sur ce répertoire"
(chouette, ici je comprend que "a+wt" remplacent 777)
====>Je remarque qu'un nouveau répertoire nomé "sources" se trouve à la racine de ma Archlinux....Je continue et j'y colle tous les programmes demandés, de autoconf à zlib, en passant par binutils et gcc...Et surtout mon noyaux :)))
chapitre suivant: CONFIGURER LA VARIABLE $LFS
=====> À mon avis ils auraient du commencer par là, c'est une intuition.
et
revoie bien:
Ça roule.
Créer le répertoire "tools"
====> ha! cette fois ci un nouveau répertoire apparemment sur la racine de la nouvelle partition....À mon avis je vais devoir revenir en arrière et recommencer le répertoire "sources" au bon endroit... :S
création du lien symbolique /tools dans votre système hôte:
l
je reviens en arrière pour "sources":
C'est rentré dans l'ordre...mais bon.
ajouter l'utilisateur lfs:
ensuite je me connecte en tant sue "lfs"
À ce moment la lfs est sur le système hôte
Configurer l'environnement et un nouveau bash-profile:
Créez maintenant le fichier .bashrc :
Enfin, pour avoir un environnement complètement préparé pour la construction des outils temporaires, chargez le
profil de l'utilisateur tout juste créé :
et la lfs se trouve dans son répertoire:
Donc la tout va bien on est dans le "home" de lfs et on viens de créer son environnement.
Le problème survient ensuite:(hé oui c'était trop beau)
Installation de Binutils
====> Pas les droits suffisants!
Je dois compiler binutils en tant que "lfs" mais il me faut les droits root pour créer les répertoires..
J"utilises donc:
Ça passe en root, mais à ce moment la je ne suis pas sur que le répertoire se trouve au bon endroit :S
Bref je m'arrange pour qu'il se trouve bien à /media/LFS/ puisque je suppose que c'est la qu'il doit se trouver, ou peut être dans /tools ??? :(
J'essaie la compilation
C'est en lisant la commande que j'ai remarqué qu'il fallait décompresser les archives, on ne l'avais pas dit....
Je crois qu'on devrais d'abord m'expliquer ou décompresser les archives,et que signifient les deux points avant le slash lorsqu'on crée ou se place dans un répertoire :)
exemple
../binutils-builds
C'est à cause de ça que je ne sais plus ou je me trouve :(
Et si lfs dans son environnement et en ayant créer des liens symboliques mais sans les droits root peut vraiment créer les bons répertoires au bon endroit?
Je n'abandonnerai pas, mais je reprend depuis zero ;))
Merci pour vos lumières :)
bon, quelque chose ne colle pas :(
Partitionnement et création d'un point de montage d'un système de fichiers ext3 pas de problèmes.
Il est monté dans /media/LFS/
ensuite:
"Les paquets et les correctifs téléchargés doivent être stockés quelque part où ils seront facilement disponibles,....."
"Vous pouvez utiliser le répertoire $LFS/sources"
"Pour créer ce répertoire, lancez, en tant qu'utilisateur root, avant de commencer la session de téléchargement :"
mkdir -v $LFS/sources
(ha?bon, ok il doit être créé sur ma racine à moi et pas encore sur la partition d'installation.....)
"Donnez le droit d'écriture et le droit sticky sur ce répertoire"
chmod -v a+wt $LFS/sources
(chouette, ici je comprend que "a+wt" remplacent 777)
====>Je remarque qu'un nouveau répertoire nomé "sources" se trouve à la racine de ma Archlinux....Je continue et j'y colle tous les programmes demandés, de autoconf à zlib, en passant par binutils et gcc...Et surtout mon noyaux :)))
chapitre suivant: CONFIGURER LA VARIABLE $LFS
=====> À mon avis ils auraient du commencer par là, c'est une intuition.
export LFS=/media/LFS
et
echo $LFS
revoie bien:
/media/LFS
Ça roule.
Créer le répertoire "tools"
mkdir -v $LFS/tools
====> ha! cette fois ci un nouveau répertoire apparemment sur la racine de la nouvelle partition....À mon avis je vais devoir revenir en arrière et recommencer le répertoire "sources" au bon endroit... :S
création du lien symbolique /tools dans votre système hôte:
l
n -sv $LFS/tools /
je reviens en arrière pour "sources":
mkdir -v $LFS/sources chmod -v a+wt $LFS/sources cp /sources/* /media/LFS/souces rm -Rf /sources/* rmdir /sources
C'est rentré dans l'ordre...mais bon.
ajouter l'utilisateur lfs:
groupadd lfs useradd -s /bin/bash -g lfs -m -k /dev/null lfs passwd lfs chown -v lfs $LFS/tools <===lfs devient le proprio de "tools" chown -v lfs $LFS/sources <====et celui de "sources" aussi
ensuite je me connecte en tant sue "lfs"
su - lfs
À ce moment la lfs est sur le système hôte
lfs@basile~:
Configurer l'environnement et un nouveau bash-profile:
cat > ~/.bash_profile << "EOF" >exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash >EOF
Créez maintenant le fichier .bashrc :
cat > ~/.bashrc << "EOF" >set +h >umask 022 >LFS=/media/LFS >LC_ALL=POSIX >PATH=/tools/bin:/bin:/usr/bin >export LFS LC_ALL PATH >EOF
Enfin, pour avoir un environnement complètement préparé pour la construction des outils temporaires, chargez le
profil de l'utilisateur tout juste créé :
source ~/.bash_profile
et la lfs se trouve dans son répertoire:
lfs~$:
Donc la tout va bien on est dans le "home" de lfs et on viens de créer son environnement.
Le problème survient ensuite:(hé oui c'était trop beau)
Installation de Binutils
mkdir -v ../binutils-build
====> Pas les droits suffisants!
Je dois compiler binutils en tant que "lfs" mais il me faut les droits root pour créer les répertoires..
J"utilises donc:
su -c 'mkdir -v ../binutils-build'
Ça passe en root, mais à ce moment la je ne suis pas sur que le répertoire se trouve au bon endroit :S
Bref je m'arrange pour qu'il se trouve bien à /media/LFS/ puisque je suppose que c'est la qu'il doit se trouver, ou peut être dans /tools ??? :(
J'essaie la compilation
CC="gcc -B/usr/bin/" ../binutils-2.18/configure \ --prefix=/tools --disable-nls --disable-werror
C'est en lisant la commande que j'ai remarqué qu'il fallait décompresser les archives, on ne l'avais pas dit....
../binutils-2.18/configure
no such file or directory, qu'est ce que je m'amuse :)))
Je crois qu'on devrais d'abord m'expliquer ou décompresser les archives,et que signifient les deux points avant le slash lorsqu'on crée ou se place dans un répertoire :)
exemple
../binutils-builds
C'est à cause de ça que je ne sais plus ou je me trouve :(
Et si lfs dans son environnement et en ayant créer des liens symboliques mais sans les droits root peut vraiment créer les bons répertoires au bon endroit?
Je n'abandonnerai pas, mais je reprend depuis zero ;))
Merci pour vos lumières :)
Utilisateur anonyme
9 août 2009 à 02:16
9 août 2009 à 02:16
Zut un message complet(3) à disparu :(
Je viens de passer 30 minutes à le rédiger pour rien :S
Je viens de passer 30 minutes à le rédiger pour rien :S
Salut
de tout façon avec arch puisque c'est en roll release tu te retrouve avec les derniers programmes, et le dernier kernel (compilé, mais rien ne t'empèche de le faire).
De plus comme il n'y as aucun environnement graphique par défaut, tu es vraiment libre (pour ma part openbox/pypanel/conky) et basta :p
Je suppose que tu as de bonne connaissance pour te lancé dans ce genre d'aventure.
Je dis juste que les raisons que tu as avancé ne sont pas selon moi les bonnes, si tu t'y connais très bien (tu compiles des kernels le matin avec le café au lait) c'est bien, sinon, pas certain que tu obtienne vraiment quelque chose de bien stable,
je le dis une fois encore les raisons que tu donnes, avoir le dernier kernel, une distrib minimaliste et légère, ainsi que les dernière logiciels sortie corresponde tout à fait à archlinux
bon courage en espérant t'avoir été utile.
de tout façon avec arch puisque c'est en roll release tu te retrouve avec les derniers programmes, et le dernier kernel (compilé, mais rien ne t'empèche de le faire).
De plus comme il n'y as aucun environnement graphique par défaut, tu es vraiment libre (pour ma part openbox/pypanel/conky) et basta :p
Je suppose que tu as de bonne connaissance pour te lancé dans ce genre d'aventure.
Je dis juste que les raisons que tu as avancé ne sont pas selon moi les bonnes, si tu t'y connais très bien (tu compiles des kernels le matin avec le café au lait) c'est bien, sinon, pas certain que tu obtienne vraiment quelque chose de bien stable,
je le dis une fois encore les raisons que tu donnes, avoir le dernier kernel, une distrib minimaliste et légère, ainsi que les dernière logiciels sortie corresponde tout à fait à archlinux
bon courage en espérant t'avoir été utile.
Salut Nico, et merci pour les conseils ;)
Oui, c'est utile, j'aime bien Arch, c'est d'ailleurs depuis ma Arch que je commence mon LFS.
C'est vrai qu'elle est légère et minimaliste, le top du top.
Je démarre LFS, quitte à obtenir un système instable, afin d'en apprendre beaucoup plus, car effectivement, je ne compile pas des kernels au déjeuner en buvant du café ;-D
Disons que j'ai réussi à terminer ma Archlinux avec ce que je voulais dessus, j'en suis déjà fier,
mais bon, je me lance à l'eau avec LFS, c'est sur que ça va me prendre du temps avant d'avancer d'un centimètre
mais c'est tout benef pour moi :)
Encore merci pour tes conseils ;)
Oui, c'est utile, j'aime bien Arch, c'est d'ailleurs depuis ma Arch que je commence mon LFS.
C'est vrai qu'elle est légère et minimaliste, le top du top.
Je démarre LFS, quitte à obtenir un système instable, afin d'en apprendre beaucoup plus, car effectivement, je ne compile pas des kernels au déjeuner en buvant du café ;-D
Disons que j'ai réussi à terminer ma Archlinux avec ce que je voulais dessus, j'en suis déjà fier,
mais bon, je me lance à l'eau avec LFS, c'est sur que ça va me prendre du temps avant d'avancer d'un centimètre
mais c'est tout benef pour moi :)
Encore merci pour tes conseils ;)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
9 août 2009 à 13:15
9 août 2009 à 13:15
Salut,
(compilé, mais rien ne t'empèche de le faire).
Si tu n'as pas encore compilé un kernel, vu que tu t'intéresses à LFS alors rends toi plaisir. Il ne faut pas sauter ça ;-))
(compilé, mais rien ne t'empèche de le faire).
Si tu n'as pas encore compilé un kernel, vu que tu t'intéresses à LFS alors rends toi plaisir. Il ne faut pas sauter ça ;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
9 août 2009 à 10:26
9 août 2009 à 10:26
Salut,
(chouette, ici je comprend que "a+wt" remplacent 777)
Pas tout à fait ;-)
Effectivement le résultat obtenu est 1777 mais sous le capot se passe autre chose ;-)
a - All (Propriétaire, Groupe, Autres)
+ - ajoute droits
w - Write (seulement) - octal (Propriétaire - 200, Groupe 20, Autres 2)
t - sTicky bit - octal 1000
Ce qui dit en fait que pour tout le monde donner le droit Write et sTicky bit ce qui donne en octal
1000 + 200 + 20 + 2 = 1222
Prenons 3 exemples
1. les droits sur répertoire sont dr-xr-xr-x ce qui veut dire
Avec a+wt en fait on fait l'additin de 1222 + 755 = 1777
2. les droits sur répertoire sont drwxr-xr-x ce qui veut dire
Avec a+wt en fait on fait l'addition de 1022 + 755 = 1777
Cette fois le propriétaires a déjà les droits d'écriture, donc le droits sera modifié au groupe et aux autres.
3. a+wt -> résultat final différent de 1777, les droits sur répertoire sont drwx------
Donc tu vois que cette fois on n'obtiens pas 1777
En octal au debut
Avec a+wt en fait on va additionner 1022 + 700 = 1722
Conclusion :
"a+wt" ne remplacent pas 777 même si en fonction des droits déjà existants a+wt permettra de compléter les droits pour arriver au final à 1777
(chouette, ici je comprend que "a+wt" remplacent 777)
Pas tout à fait ;-)
Effectivement le résultat obtenu est 1777 mais sous le capot se passe autre chose ;-)
a - All (Propriétaire, Groupe, Autres)
+ - ajoute droits
w - Write (seulement) - octal (Propriétaire - 200, Groupe 20, Autres 2)
t - sTicky bit - octal 1000
Ce qui dit en fait que pour tout le monde donner le droit Write et sTicky bit ce qui donne en octal
1000 + 200 + 20 + 2 = 1222
Prenons 3 exemples
1. les droits sur répertoire sont dr-xr-xr-x ce qui veut dire
propriétaire 400+0+100 =500 groupe 40+0+10 = 50 autres 4+0+1 = 5 Total =555
Avec a+wt en fait on fait l'additin de 1222 + 755 = 1777
2. les droits sur répertoire sont drwxr-xr-x ce qui veut dire
propriétaire 400+200+100=700 groupe 40+0+10 = 50 autres 4+0+1 = 5 Total =755
Avec a+wt en fait on fait l'addition de 1022 + 755 = 1777
Cette fois le propriétaires a déjà les droits d'écriture, donc le droits sera modifié au groupe et aux autres.
3. a+wt -> résultat final différent de 1777, les droits sur répertoire sont drwx------
lami20j@debian:~$ ls -ld rrr drwx------ 2 lami20j lami20j 4096 aoû 9 10:01 rrr lami20j@debian:~$ chmod -v a+wt rrr Le mode d'accès de `rrr' a été modifié à 1722 (rwx-w--wT). lami20j@debian:~$ ls -ld rrr drwx-w--wT 2 lami20j lami20j 4096 aoû 9 10:01 rrr
Donc tu vois que cette fois on n'obtiens pas 1777
En octal au debut
propriétaire 400+200+100=700 groupe 0+0+0 = 0 autres 0+0+0 = 0 Total =700
Avec a+wt en fait on va additionner 1022 + 700 = 1722
Conclusion :
"a+wt" ne remplacent pas 777 même si en fonction des droits déjà existants a+wt permettra de compléter les droits pour arriver au final à 1777
Salut lami20j :)
Merci pour ces précisions sur chmod et sur les valeurs 8-)
,à mon avis en reprenant à zéro je serai moins perdu dans ce que lfs fait et l'endroit ou il pose ses répertoire.
J'utiliserai des ls -l pour retrouver les répertoires après création, je comprendrai mieux l'usage de ../
Bon Dimanche ;)
Merci pour ces précisions sur chmod et sur les valeurs 8-)
,à mon avis en reprenant à zéro je serai moins perdu dans ce que lfs fait et l'endroit ou il pose ses répertoire.
J'utiliserai des ls -l pour retrouver les répertoires après création, je comprendrai mieux l'usage de ../
Bon Dimanche ;)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
9 août 2009 à 13:24
9 août 2009 à 13:24
Salut,
../ c'est le répertoire parent
./ c'est le répertoire courant
Donc tu montes d'un cran si tu veux dans l'arborescence
../ c'est le répertoire parent
./ c'est le répertoire courant
Donc tu montes d'un cran si tu veux dans l'arborescence
lami20j@debian:~/rep$ ls -l total 4 -rw-r--r-- 1 lami20j lami20j 6 aoû 9 13:18 fic lami20j@debian:~/rep$ cat fic salut lami20j@debian:~/rep$ ls -l ./ total 4 -rw-r--r-- 1 lami20j lami20j 6 aoû 9 13:18 fic lami20j@debian:~/rep$ cat ./fic salut lami20j@debian:~/rep$ ls -l ../rep/ total 4 -rw-r--r-- 1 lami20j lami20j 6 aoû 9 13:18 fic lami20j@debian:~/rep$ cat ../rep/fic salut
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
9 août 2009 à 15:37
9 août 2009 à 15:37
Ok, donc en te trouvant dans /rep
c'est idem de faire:
et
sauf que l'usage de ../ oblige à donner le nom du répertoire parent, vu ;)
Je m'y remet.
c'est idem de faire:
cat fic
et
cat ../rep/fic
sauf que l'usage de ../ oblige à donner le nom du répertoire parent, vu ;)
Je m'y remet.
Urielxx
Messages postés
190
Date d'inscription
mardi 26 août 2008
Statut
Membre
Dernière intervention
25 juin 2013
46
9 août 2009 à 15:01
9 août 2009 à 15:01
Salut initials 76,
Bon courage pour ta découverte de la LFS, mais assure-toi de bien connaitre les bases de Linux/UNIX avant de te lancer dans l'exercice. Ca vaut peut-etre le coût de te familiariser un peu avec le shell (bash) et les commandes GNU/Linux en général au préalable si tu ne veux pas être frustré ou dégouté, parce que faire une LFS 'est assez long et nécessite un peu de maitrise préalable du sujet ! Par contre, c'est un excellent moyen de comprendre un système Linux dans le détail (au lieu de rentrer dans les guéguerres de distributions Linux).
J'ai déjà fait plusieurs LFS (je suis ingénieur système Linux), mais ça date un peu, je ne peux que te conseiller de la patience, et surtout de bien bien lire et suivre la doc pas à pas : elle est (était) généralement bien faite pour ça. Par contre, le moindre oubli peut avoir des conséquences par la suite (genre si tu oublies un patch, ou une modification dans un script...)
Par contre, la LFS présente un gros désavantage par rapport à des distributions classiques : elle est difficile à maintenir. Par exemple, si tu veux installer un nouveau produit, tu te retrouves vite à devoir chercher toutes les dépendances à la main, certaines lib devront être ugpradées, et ça impactera d'autres produits qui ne marcheront plus, etc, etc. Tout ce travail est habituellement fait par les distributeurs, qui vérifient les compatibilités de produits entre eux et packagent le tout. Exemple: si tu veux installer firefox, tu devras compiler toutes les libs qui sont utilisées, dont X11 (plusieurs dizaines de Meg de sources) et d'autres, et tu en auras pour des heures de compilations (je suis sérieux).
Par expérience, je te conseille donc d'avoir un dual boot avec une distrib linux "classique", et ta LFS à coté, afin de ne pas devoir passer des heures à regarder des trucs se compiler sous pretexte que tu veux lire un DVD ou autre opération qui se font en 5 minutes sur une distrib.
Celà dit, tu m'as l'air d'être très motivé ! Tu pourrais devenir un professionnel du sujet si tu poursuis dans cette voie !
Bon courage à toi !
Bon courage pour ta découverte de la LFS, mais assure-toi de bien connaitre les bases de Linux/UNIX avant de te lancer dans l'exercice. Ca vaut peut-etre le coût de te familiariser un peu avec le shell (bash) et les commandes GNU/Linux en général au préalable si tu ne veux pas être frustré ou dégouté, parce que faire une LFS 'est assez long et nécessite un peu de maitrise préalable du sujet ! Par contre, c'est un excellent moyen de comprendre un système Linux dans le détail (au lieu de rentrer dans les guéguerres de distributions Linux).
J'ai déjà fait plusieurs LFS (je suis ingénieur système Linux), mais ça date un peu, je ne peux que te conseiller de la patience, et surtout de bien bien lire et suivre la doc pas à pas : elle est (était) généralement bien faite pour ça. Par contre, le moindre oubli peut avoir des conséquences par la suite (genre si tu oublies un patch, ou une modification dans un script...)
Par contre, la LFS présente un gros désavantage par rapport à des distributions classiques : elle est difficile à maintenir. Par exemple, si tu veux installer un nouveau produit, tu te retrouves vite à devoir chercher toutes les dépendances à la main, certaines lib devront être ugpradées, et ça impactera d'autres produits qui ne marcheront plus, etc, etc. Tout ce travail est habituellement fait par les distributeurs, qui vérifient les compatibilités de produits entre eux et packagent le tout. Exemple: si tu veux installer firefox, tu devras compiler toutes les libs qui sont utilisées, dont X11 (plusieurs dizaines de Meg de sources) et d'autres, et tu en auras pour des heures de compilations (je suis sérieux).
Par expérience, je te conseille donc d'avoir un dual boot avec une distrib linux "classique", et ta LFS à coté, afin de ne pas devoir passer des heures à regarder des trucs se compiler sous pretexte que tu veux lire un DVD ou autre opération qui se font en 5 minutes sur une distrib.
Celà dit, tu m'as l'air d'être très motivé ! Tu pourrais devenir un professionnel du sujet si tu poursuis dans cette voie !
Bon courage à toi !
Salut Urielxx ;)
C'est cool de me motiver,
justement à propos de ce que tu conseillait au niveau des patches et de la doc à suivre strictement,
j'ai pris la liberté de téléchargé des versions plus neuves de tous les logiciels, je me suis dit que de cette façon, je ne m'en tiendrais pas au copier/coller des lignes de compilation et je devrais ainsi les éditer de façon à compiler les nouvelles versions par rapport au livre.
Je cite en exemple binutils,gcc,glibc,sed,grep,bash et le noyaux desquels j'ai pris les dernières versions
(parfois jusqu'a 3 versions supérieures)
....Trop gourmand trop vite? :)
"Par expérience, je te conseille donc d'avoir un dual boot avec une distrib linux "classique", et ta LFS à coté"
Yes, je fais la LFS depuis ma Arch qui est elle terminée avec un 2.6.29....mais je ne veux pas encore y compiler un 2.6.30 j'aurais trop peur de l'abîmer.
Donc LFS c'est le bon exercice à faire comme vous dites ;))
@+
C'est cool de me motiver,
justement à propos de ce que tu conseillait au niveau des patches et de la doc à suivre strictement,
j'ai pris la liberté de téléchargé des versions plus neuves de tous les logiciels, je me suis dit que de cette façon, je ne m'en tiendrais pas au copier/coller des lignes de compilation et je devrais ainsi les éditer de façon à compiler les nouvelles versions par rapport au livre.
Je cite en exemple binutils,gcc,glibc,sed,grep,bash et le noyaux desquels j'ai pris les dernières versions
(parfois jusqu'a 3 versions supérieures)
....Trop gourmand trop vite? :)
"Par expérience, je te conseille donc d'avoir un dual boot avec une distrib linux "classique", et ta LFS à coté"
Yes, je fais la LFS depuis ma Arch qui est elle terminée avec un 2.6.29....mais je ne veux pas encore y compiler un 2.6.30 j'aurais trop peur de l'abîmer.
Donc LFS c'est le bon exercice à faire comme vous dites ;))
@+
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
9 août 2009 à 18:36
9 août 2009 à 18:36
Re,
j'ai pris la liberté de téléchargé des versions plus neuves de tous les logiciels,
Toutefois tu n'as pas tenu compte de leur recommandation ;-)
Vu que tu ne l'as jamais fait, alors peut être qu'il faudra les écouter ;-))
Nous vous recommandons fortement de ne pas utiliser de versions supérieures car les commandes de construction pour une version pourraient ne pas fonctionner avec une version plus récente. Les versions plus récentes pourraient aussi avoir des problèmes nécessitant des contournements. Ces derniers seront développés et stabilisés dans la version de développement du livre.
j'ai pris la liberté de téléchargé des versions plus neuves de tous les logiciels,
Toutefois tu n'as pas tenu compte de leur recommandation ;-)
Vu que tu ne l'as jamais fait, alors peut être qu'il faudra les écouter ;-))
Nous vous recommandons fortement de ne pas utiliser de versions supérieures car les commandes de construction pour une version pourraient ne pas fonctionner avec une version plus récente. Les versions plus récentes pourraient aussi avoir des problèmes nécessitant des contournements. Ces derniers seront développés et stabilisés dans la version de développement du livre.
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
9 août 2009 à 19:39
9 août 2009 à 19:39
Re,
"Toutefois tu n'as pas tenu compte de leur recommandation ;-)
Vu que tu ne l'as jamais fait, alors peut être qu'il faudra les écouter ;-)) "
Oui c'est vrai :S
C'est beaucoup plus précis que je ne le croyais, on ne fait pas n'importe quoi avec n'importe quoi.
Pour le moment la compilation de gcc avance bien et le make ne retourne pas encore de messages d'erreurs.
Si à la fin j'obtiens un système stable, ce sera comme au poker: la chance du débutant :)
"Toutefois tu n'as pas tenu compte de leur recommandation ;-)
Vu que tu ne l'as jamais fait, alors peut être qu'il faudra les écouter ;-)) "
Oui c'est vrai :S
C'est beaucoup plus précis que je ne le croyais, on ne fait pas n'importe quoi avec n'importe quoi.
Pour le moment la compilation de gcc avance bien et le make ne retourne pas encore de messages d'erreurs.
Si à la fin j'obtiens un système stable, ce sera comme au poker: la chance du débutant :)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
9 août 2009 à 19:43
9 août 2009 à 19:43
Re,
Ben, non, il n'y a pas la chance. C'est toi qui est fort ;-)))
Ben, non, il n'y a pas la chance. C'est toi qui est fort ;-)))
Utilisateur anonyme
9 août 2009 à 16:52
9 août 2009 à 16:52
Bon apparemment je m'y suit retrouvé plutôt bien et il y avait une incohérence dans la doc lfs:
"La documentation de Binutils recommande de construire Binutils en dehors du répertoire des sources, c'est-à-dire
dans un répertoire de construction dédié :"
donc en root (puisque lfs n'as pas les droits pour créer ce répertoire)
ensuite on se place dedans,mais entre temps on y a décompresser bintuil-2.19.tar.bz2
donc dans ce répertoire j'ai: bintuils-2.19 décompressé.
Et pour compiler la commande donnée est:
Hors c'est normal que j'ai un "no such file or directory"
puisqu'il faut entrer:
sans remonter d'un répertoire pour bintuils-2.19 puisqu'avec cd je suis déjà dans le répertoire parent (merci lami20j)
Et la c'est passé, j'ai un début de début de début de système:
Voyons la suite :)
"La documentation de Binutils recommande de construire Binutils en dehors du répertoire des sources, c'est-à-dire
dans un répertoire de construction dédié :"
donc en root (puisque lfs n'as pas les droits pour créer ce répertoire)
su -c 'mkdir -v ../binutils-build'
ensuite on se place dedans,mais entre temps on y a décompresser bintuil-2.19.tar.bz2
cd ../binutils-build
donc dans ce répertoire j'ai: bintuils-2.19 décompressé.
Et pour compiler la commande donnée est:
CC="gcc -B/usr/bin/" ../binutils-2.19/configure \ --prefix=/tools --disable-nls --disable-werror
Hors c'est normal que j'ai un "no such file or directory"
puisqu'il faut entrer:
CC="gcc -B/usr/bin/" ./binutils-2.19/configure \ --prefix=/tools --disable-nls --disable-werror
sans remonter d'un répertoire pour bintuils-2.19 puisqu'avec cd je suis déjà dans le répertoire parent (merci lami20j)
Et la c'est passé, j'ai un début de début de début de système:
lfs:~$ ls -l $LFS/tools/ total 24 drwxr-xr-x 2 lfs lfs 4096 Aug 9 16:42 bin drwxr-xr-x 4 lfs lfs 4096 Aug 9 16:40 i686-pc-linux-gnu drwxr-xr-x 2 lfs lfs 4096 Aug 9 16:40 include drwxr-xr-x 2 lfs lfs 4096 Aug 9 16:40 info drwxr-xr-x 2 lfs lfs 4096 Aug 9 16:40 lib drwxr-xr-x 3 lfs lfs 4096 Aug 9 16:40 man
Voyons la suite :)
Utilisateur anonyme
9 août 2009 à 22:24
9 août 2009 à 22:24
Yop :)
Pour gcc c'est passé aussi (après 5h de compilation)
Je continue :)
Tiens j'apprends une nouvelle commande:
Pour gcc c'est passé aussi (après 5h de compilation)
lfs:~$ ls -l $LFS/tools/ total 32 drwxr-xr-x 2 lfs lfs 4096 Aug 9 22:16 bin drwxr-xr-x 4 lfs lfs 4096 Aug 9 16:40 i686-pc-linux-gnu drwxr-xr-x 3 lfs lfs 4096 Aug 9 22:10 include drwxr-xr-x 2 lfs lfs 4096 Aug 9 22:17 info drwxr-xr-x 6 lfs lfs 4096 Aug 9 22:17 lib drwxr-xr-x 3 lfs lfs 4096 Aug 9 22:10 libexec drwxr-xr-x 4 lfs lfs 4096 Aug 9 22:10 man drwxr-xr-x 4 lfs lfs 4096 Aug 9 22:17 share
Je continue :)
Tiens j'apprends une nouvelle commande:
make mrproper
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
9 août 2009 à 22:49
9 août 2009 à 22:49
Re,
Tu peux faire tout simplement ls -l /tools (enfin je suppose que tu as crée le lien symbolique ;-) )
Tu peux faire tout simplement ls -l /tools (enfin je suppose que tu as crée le lien symbolique ;-) )
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
9 août 2009 à 22:53
9 août 2009 à 22:53
Re,
make mrproper n'est pas nécessaire dans ton cas vu que tu viens de commencer ;-)
make mrproper n'est pas nécessaire dans ton cas vu que tu viens de commencer ;-)
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
9 août 2009 à 23:38
9 août 2009 à 23:38
Re ;)
Merci pour l'info.
Je remarque que la présence de "root" est capitale pour pouvoir poursuivre, notamment pour certaines commandes, malgré qu'a chaque fois je met le mode 1777 et que j'attribue le nouveau répertoire à lfs...
Exemple avec: Installation de Linux API Headers
ce n'est pas renseigné dans la doc, mais pour les commandes suivantes:
(dans le répertoire du nouveau noyau)
En préparation à la compilation de glibc, il faut l'action de root pour ces deux ci:
Idem pour le 'make' de glibc, sous peine d'avoir un stop avec error 2 dû à des restriction de permissions sur certains fichiers/répertoires :-/ ????
Obligé de lancer (depuis le répertoire ../glibc-build)
est ce du au fait de l'utilisation d'outils du système hôte qui appartiennent à root?
sûrement je pense...
Merci pour l'info.
Je remarque que la présence de "root" est capitale pour pouvoir poursuivre, notamment pour certaines commandes, malgré qu'a chaque fois je met le mode 1777 et que j'attribue le nouveau répertoire à lfs...
Exemple avec: Installation de Linux API Headers
ce n'est pas renseigné dans la doc, mais pour les commandes suivantes:
(dans le répertoire du nouveau noyau)
make headers_check make INSTALL_HDR_PATH=dest headers_install cp -rv dest/include/* /tools/include
En préparation à la compilation de glibc, il faut l'action de root pour ces deux ci:
su -c 'make headers_check' su -c 'make INSTALL_HDR_PATH=dest headers_install'
Idem pour le 'make' de glibc, sous peine d'avoir un stop avec error 2 dû à des restriction de permissions sur certains fichiers/répertoires :-/ ????
Obligé de lancer (depuis le répertoire ../glibc-build)
su -c 'make'
est ce du au fait de l'utilisation d'outils du système hôte qui appartiennent à root?
sûrement je pense...
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
9 août 2009 à 23:44
9 août 2009 à 23:44
Re,
Affiche le résultat de
Affiche le résultat de
ls -l /mnt/lfs
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
9 août 2009 à 23:54
9 août 2009 à 23:54
En fait j'ai monté LFS dans /media et non dans /mnt comme dans la doc (je suis chi**t :)))
[initials@Basile /]$ ls -l /media/LFS total 24 drwx------ 2 root root 16384 2009-08-08 22:06 lost+found drwxrwxrwt 4 lfs root 4096 2009-08-09 22:45 sources drwxrwxrwt 10 lfs root 4096 2009-08-09 22:10 tools
bob031
Messages postés
8158
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
1 septembre 2014
472
9 août 2009 à 22:30
9 août 2009 à 22:30
Bonjour,
Très bien !
Bon courage ....
:-)
Très bien !
Bon courage ....
:-)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
9 août 2009 à 23:52
9 août 2009 à 23:52
Re,
Au cas où si tu rencontreras des soucis avec les paquets de versions plus récente ici tu trouveras les paquets utilisé pour LFS
ftp://mirror.cict.fr/lfs/lfs-packages/development/
On monte d'un cran et tu as même l'archive tar ;-)
ftp://mirror.cict.fr/lfs/lfs-packages/
Au cas où si tu rencontreras des soucis avec les paquets de versions plus récente ici tu trouveras les paquets utilisé pour LFS
ftp://mirror.cict.fr/lfs/lfs-packages/development/
On monte d'un cran et tu as même l'archive tar ;-)
ftp://mirror.cict.fr/lfs/lfs-packages/
Urielxx
Messages postés
190
Date d'inscription
mardi 26 août 2008
Statut
Membre
Dernière intervention
25 juin 2013
46
10 août 2009 à 00:56
10 août 2009 à 00:56
Concernant les versions à utiliser, je conseillerais quand même de ne pas tenter de changer. Je l'ai déjà fait pour la glibc et quelques autres produits, et ça a été une horreur pour avoir un système stable. Après, vu que tu es motivé, c'est toi qui voit ;-)
Utilisateur anonyme
10 août 2009 à 02:14
10 août 2009 à 02:14
Bonsoir à tous,
blocage ici lors du déplacement de l'éditeur de liens :(
Ce n'est pas vraiment dans son déplacement, mais ensuite lors de l'édition du fichier specs de gcc avec sed:
===> pas de fichier de ce type :-/
et c'est capital pour la suite de l'édition:
et de la vérification de l'ensemble des outils:
qui doivent répondre:
Sans ça impossible d'utiliser mes nouveaux outils ;)
edit: effectivement (après un './configure')
Je cherche aussi de mon côté.
Bonne nuit :)
blocage ici lors du déplacement de l'éditeur de liens :(
Ce n'est pas vraiment dans son déplacement, mais ensuite lors de l'édition du fichier specs de gcc avec sed:
gcc -dumpspecs | sed 's@/lib/ld-linux.so.2@/tools&@g' \ > `dirname $(gcc -print-libgcc-file-name)`/specs
===> pas de fichier de ce type :-/
et c'est capital pour la suite de l'édition:
GCC_FIXED=`dirname $(gcc -print-libgcc-file-name)`/include-fixed && find ${GCC_FIXED}/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \; && rm -vf `grep -l "DO NOT EDIT THIS FILE" ${GCC_FIXED}/*` && unset GCC_FIXED
et de la vérification de l'ensemble des outils:
echo 'main(){}' > dummy.c cc dummy.c readelf -l a.out | grep ': /tools'
qui doivent répondre:
[Requesting program interpreter: /tools/lib/ld-linux.so.2]
Sans ça impossible d'utiliser mes nouveaux outils ;)
edit: effectivement (après un './configure')
checking for C compiler default output file name... configure: error: C compiler cannot create executables
Je cherche aussi de mon côté.
Bonne nuit :)
C'est bon j'ai trouvé :))))
Sur cette excellente page:
http://www.mingw.org/wiki/SpecsFileHOWTO
GCC will produce a specs file via the following command.
gcc -dumpspecs > specs
Sauf que je l'ai éditée en fonction de l'endroit ou mon gcc cherchais ce fichier:
Et la sortie de la commande de vérification des outils est bien:
Et cette fois ci le './configure' pour tcl8 est parti :))))
Sur cette excellente page:
http://www.mingw.org/wiki/SpecsFileHOWTO
GCC will produce a specs file via the following command.
gcc -dumpspecs > specs
Sauf que je l'ai éditée en fonction de l'endroit ou mon gcc cherchais ce fichier:
lfs:~$ gcc -dumpspecs > $LFS/tools/lib/gcc/i686-pc-linux-gnu/4.4.1/specs
Et la sortie de la commande de vérification des outils est bien:
lfs:~$ readelf -l a.out | grep ': /tools' [Requesting program interpreter: /tools/lib/ld-linux.so.2]
Et cette fois ci le './configure' pour tcl8 est parti :))))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
10 août 2009 à 11:08
10 août 2009 à 11:08
Re,
Juste pour voir, affiche le résultat de la commande (exécute là dans une autre console)
Juste pour voir, affiche le résultat de la commande (exécute là dans une autre console)
gcc -dumpspecs
Bonjour,ok ;)
C'est assez long :
C'est assez long :
lfs:~$ gcc -dumpspecs *asm: %{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}} *asm_debug: %{!g0:%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}} %{fdebug-prefix-map=*:--debug-prefix-map %*} *asm_final: *asm_options: %{--target-help:%:print-asm-header()} %a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O} *invoke_as: %{!S:-o %|.s | as %(asm_options) %|.s %A } *cpp: %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT} *cpp_options: %(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w} %{f*} %{g*:%{!g0:%{g*} %{!fno-working-directory:-fworking-directory}}} %{O*} %{undef} %{save-temps:-fpch-preprocess} *cpp_debug_options: %{d*} *cpp_unique_options: %{C|CC:%{!E:%eGCC does not support -C or -CC without -E}} %{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*&F*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*} %{!E:%{!M:%{!MM:%{!MT:%{!MQ:%{MD|MMD:%{o*:-MQ %*}}}}}}} %{remap} %{g3|ggdb3|gstabs3|gcoff3|gxcoff3|gvms3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{fmudflap:-D_MUDFLAP -include mf-runtime.h} %{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h} %{E|M|MM:%W{o*}} *trad_capable_cpp: cc1 -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp} *cc1: %(cc1_cpu) %{profile:-p} *cc1_options: %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}} %1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*} %{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}} %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs} %{v:-version} %{pg:-p} %{p} %{f*} %{undef} %{Qn:-fno-ident} %{--help:--help} %{--target-help:--target-help} %{--help=*:--help=%(VALUE)} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}} %{fsyntax-only:-o %j} %{-param*} %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants} %{coverage:-fprofile-arcs -ftest-coverage} *cc1plus: *link_gcc_c_sequence: %{static:--start-group} %G %L %{static:--end-group}%{!static:%G} *link_ssp: %{fstack-protector:} *endfile: %{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} %{mpc32:crtprec32.o%s} %{mpc64:crtprec64.o%s} %{mpc80:crtprec80.o%s} %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s *link: %{!static:--eh-frame-hdr} -m %(link_emulation) %{shared:-shared} %{!shared: %{!ibcs: %{!static: %{rdynamic:-export-dynamic} %{!dynamic-linker:-dynamic-linker %(dynamic_linker)}} %{static:-static}}} *lib: %{pthread:-lpthread} %{shared:-lc} %{!shared:%{mieee-fp:-lieee} %{profile:-lc_p}%{!profile:-lc}} *mfwrap: %{static: %{fmudflap|fmudflapth: --wrap=malloc --wrap=free --wrap=calloc --wrap=realloc --wrap=mmap --wrap=munmap --wrap=alloca} %{fmudflapth: --wrap=pthread_create}} %{fmudflap|fmudflapth: --wrap=main} *mflib: %{fmudflap|fmudflapth: -export-dynamic} *link_gomp: *libgcc: -lgcc *startfile: %{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} *switches_need_spaces: *cross_compile: 0 *version: 4.4.1 *multilib: . ; *multilib_defaults: *multilib_extra: *multilib_matches: *multilib_exclusions: *multilib_options: *linker: collect2 *link_libgcc: %D *md_exec_prefix: *md_startfile_prefix: *md_startfile_prefix_1: *startfile_prefix_spec: *sysroot_spec: --sysroot=%R *sysroot_suffix_spec: *sysroot_hdrs_suffix_spec: *cc1_cpu: %{mcpu=*:-mtune=%* %n`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead. } %<mcpu=* %{mintel-syntax:-masm=intel %n`-mintel-syntax' is deprecated. Use `-masm=intel' instead. } %{mno-intel-syntax:-masm=att %n`-mno-intel-syntax' is deprecated. Use `-masm=att' instead. }%{march=native:%<march=native %:local_cpu_detect(arch) %{!mtune=*:%<mtune=native %:local_cpu_detect(tune)}} %{mtune=native:%<mtune=native %:local_cpu_detect(tune)} *link_emulation: elf_i386 *dynamic_linker: %{muclibc:%{mglibc:%e-mglibc and -muclibc used together}/lib/ld-uClibc.so.0;:/lib/ld-linux.so.2} *link_command: %{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S: %(linker) %l %{pie:-pie} %X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r} %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}} %{static:} %{L*} %(mfwrap) %(link_libgcc) %o %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)} %(mflib) %{fprofile-arcs|fprofile-generate|coverage:-lgcov} %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}} %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} }}}}}} lfs:~$
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
10 août 2009 à 13:52
10 août 2009 à 13:52
Re,
Aussi
Aussi
dirname $(gcc -print-libgcc-file-name)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
10 août 2009 à 15:01
10 août 2009 à 15:01
Re,
Et ça
Si tu as une erreur affiche le résultat sinon affiche le résultat de
Et ça
gcc -dumpspecs | sed 's@/lib/ld-linux.so.2@/tools&@g' > `dirname $(gcc -print-libgcc-file-name)`/specs_test
Si tu as une erreur affiche le résultat sinon affiche le résultat de
find /media/LFS -name '*spec*'
Voila,
aussi:
Dans laquelle liste de réponses on trouve:
:)
lfs:~$ gcc -dumpspecs | sed 's@/lib/ld-linux.so.2@/tools&@g' > `dirname $(gcc -print-libgcc-file-name)`/specs_test lfs:~$
aussi:
lfs:~$ find /media/LFS -name '*spec*'
Dans laquelle liste de réponses on trouve:
/media/LFS/tools/lib/gcc/i686-pc-linux-gnu/4.4.1/specs_test /media/LFS/tools/lib/gcc/i686-pc-linux-gnu/4.4.1/specs
:)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
10 août 2009 à 15:10
10 août 2009 à 15:10
Re,
blocage ici lors du déplacement de l'éditeur de liens :(
..............
===> pas de fichier de ce type :-/
Comment tu as eu ce blocage alors? ;-)
Je pense que tu as du faire une erreur dans la commande puisque tu viens de me montrer qu'elle fonctionne ;-)
La morale de l'histoire ;-)
Quand tu as une erreur il faut copier la commande que tu as tapé pas celle du manuel qui semble être bonne ;-)
blocage ici lors du déplacement de l'éditeur de liens :(
..............
===> pas de fichier de ce type :-/
Comment tu as eu ce blocage alors? ;-)
Je pense que tu as du faire une erreur dans la commande puisque tu viens de me montrer qu'elle fonctionne ;-)
La morale de l'histoire ;-)
Quand tu as une erreur il faut copier la commande que tu as tapé pas celle du manuel qui semble être bonne ;-)
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
10 août 2009 à 16:17
10 août 2009 à 16:17
Salut :)
À mon avis nos réponses se sont croisée:
ce matin
:))
Sorry d'avoir suivi ensuite sans rien dire, mais comme je ne comprend pas tout, je pensait que tu faisait d'autres vérifications :|
À mon avis nos réponses se sont croisée:
ce matin
:))
Sorry d'avoir suivi ensuite sans rien dire, mais comme je ne comprend pas tout, je pensait que tu faisait d'autres vérifications :|
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
10 août 2009 à 18:32
10 août 2009 à 18:32
Re,
Ben, non justement.
Tu as du faire une autre bidouille pour y arriver quand la commande de manuel fonctionne très bien.
Tu vois ce que je veux dire?
Dans ton message 30 tu disais que la commande de manuel ne fonctionne pas.
Ben, à priori elle fonctionne selon ton message 42.
Ben, non justement.
Tu as du faire une autre bidouille pour y arriver quand la commande de manuel fonctionne très bien.
Tu vois ce que je veux dire?
Dans ton message 30 tu disais que la commande de manuel ne fonctionne pas.
Ben, à priori elle fonctionne selon ton message 42.
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
10 août 2009 à 20:50
10 août 2009 à 20:50
Exact, au départ elle ne fonctionnait pas, car d'après ce que je crois avoir compris, specs n'avait pas été généré par défaut par gcc.
J'ai trouvé sur une page web sur gcc une commande qui génère un fichier specs et ça à résolu mon problème de "no such file or directory"
et j'ai pu ensuite suivre la doc et utiliser sed pour éditer ce fichier :)
Quand il s'agit de codage, "j'essaye de comprendre" mais je n'ai aucune idée d'où j'ai les pieds ;)
C'est ça qui est chouette, même si c'est pas un jeu.
Mais en tout cas merci énormément de me suivre.
;)
J'ai trouvé sur une page web sur gcc une commande qui génère un fichier specs et ça à résolu mon problème de "no such file or directory"
et j'ai pu ensuite suivre la doc et utiliser sed pour éditer ce fichier :)
Quand il s'agit de codage, "j'essaye de comprendre" mais je n'ai aucune idée d'où j'ai les pieds ;)
C'est ça qui est chouette, même si c'est pas un jeu.
Mais en tout cas merci énormément de me suivre.
;)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
10 août 2009 à 20:02
10 août 2009 à 20:02
Re,
Juste pour te dire que jusqu'à ce moment je n'ai eu aucune erreur ni d'être obligé d'installer en root (je parle pour kernel)
Juste pour te dire que jusqu'à ce moment je n'ai eu aucune erreur ni d'être obligé d'installer en root (je parle pour kernel)
lfs@debian:/mnt/lfs/sources$ gcc -dumpspecs | sed 's@/lib/ld-linux.so.2@/tools&@g' \ > > `dirname $(gcc -print-libgcc-file-name)`/specs lfs@debian:/mnt/lfs/sources$ find /mnt/lfs/ -name '*specs*' 2>/dev/null /mnt/lfs/tools/lib/libgomp.spec /mnt/lfs/tools/lib/gcc/i686-pc-linux-gnu/4.3.2/specset la suite
lfs@debian:/mnt/lfs/sources$ echo 'main(){}' > dummy.c lfs@debian:/mnt/lfs/sources$ cc dummy.c lfs@debian:/mnt/lfs/sources$ readelf -l a.out | grep ': /tools' [Requesting program interpreter: /tools/lib/ld-linux.so.2] lfs@debian:/mnt/lfs/sources$
Je viens de comprendre ma bourde au niveau du mélange des propriétaire:
Je travaille avec lfs dans le terminal, mais comme un grosbourrin, je décompresse graphiquement avec initials.
Donc lfs propriétaire de l'archive, initials propriétaire du répertoire issu de l'archive.
D'où mes problèmes de permissions.
Je mériterais des baffes :)
Bon, la je vais sûrement y passer ma soirée (voir même plus)
J'ai une erreur dans le make de la seconde passe de gcc.
Je dois trouver pourquoi il ne trouve pas -lcloog
J'y replonge ;)
Encore merci pour la patience.
Je travaille avec lfs dans le terminal, mais comme un grosbourrin, je décompresse graphiquement avec initials.
Donc lfs propriétaire de l'archive, initials propriétaire du répertoire issu de l'archive.
D'où mes problèmes de permissions.
Je mériterais des baffes :)
Bon, la je vais sûrement y passer ma soirée (voir même plus)
J'ai une erreur dans le make de la seconde passe de gcc.
/media/LFS/tools/bin/../lib/gcc/i686-pc-linux-gnu/4.4.1/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lcloog collect2: ld returned 1 exit status make[2]: *** [cc1-dummy] Error 1 make[2]: Leaving directory `/home/gcc-build/gcc-4.4.1/host-i686-pc-linux-gnu/gcc' make[1]: *** [all-gcc] Error 2 make[1]: Leaving directory `/home/gcc-build/gcc-4.4.1' make: *** [all] Error 2
Je dois trouver pourquoi il ne trouve pas -lcloog
J'y replonge ;)
Encore merci pour la patience.
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
10 août 2009 à 21:09
10 août 2009 à 21:09
Re,
je décompresse graphiquement avec initials.
Au début dans le manuel, il est bien préciser de travailler en lfs.
Perso, je te conseille d'utiliser uniquement la console.
je décompresse graphiquement avec initials.
Au début dans le manuel, il est bien préciser de travailler en lfs.
Perso, je te conseille d'utiliser uniquement la console.
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
11 août 2009 à 09:56
11 août 2009 à 09:56
Salut,
Bon, la je vais sûrement y passer ma soirée (voir même plus)
Toujours en vie ;-DDDD
Bon, la je vais sûrement y passer ma soirée (voir même plus)
Toujours en vie ;-DDDD
Salut :)
Oui toujours en vie, et cette fois ci en "restart" en suivant bien ce qui est écrit dans le livre et en utilisant les logiciels conseillés et en suivant les conseils des anciens.
On va nulle part sans ;)
Je m'accroche, je réapparaîtrai lorsque je serai de nouveau au delà de la deuxième passe de gcc.
J'espère que je ne fais perdre son temps à personne ;)
Oui toujours en vie, et cette fois ci en "restart" en suivant bien ce qui est écrit dans le livre et en utilisant les logiciels conseillés et en suivant les conseils des anciens.
On va nulle part sans ;)
Je m'accroche, je réapparaîtrai lorsque je serai de nouveau au delà de la deuxième passe de gcc.
J'espère que je ne fais perdre son temps à personne ;)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
Utilisateur anonyme
11 août 2009 à 14:24
11 août 2009 à 14:24
Re,
Chez moi c'est passé sans problèmes ;-)
Chez moi c'est passé sans problèmes ;-)
Utilisateur anonyme
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
11 août 2009 à 14:34
11 août 2009 à 14:34
Je te crois, mais comme j'avais pris gcc-4.4.1 au lieu de gcc-4.3.2 .....
On ne fais pas (à mon niveau) n'importe quoi avec n'importe quoi :)
Ça me fera les pieds :D
On ne fais pas (à mon niveau) n'importe quoi avec n'importe quoi :)
Ça me fera les pieds :D
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
11 août 2009 à 14:48
11 août 2009 à 14:48
Re,
J'espère que tu n'as pas mélanger encore les droits.
En fait au début l'ordre est plutôt comme ça
Comme ça on es sûr que lfs est propriétaire des archives, pour ne plus avoir ton histoire de compilation en root pour le kernel
J'espère que tu n'as pas mélanger encore les droits.
En fait au début l'ordre est plutôt comme ça
export LFS=/mnt/lfs mkdir -pv $LFS mount -v -t ext3 /dev/$1 $LFS mkdir -v $LFS/sources chmod -v a+wt $LFS/sources mkdir -v $LFS/tools ln -sv $LFS/tools / groupadd lfs useradd -s /bin/bash -g lfs -m -k /dev/null lfs passwd lfs chown -v lfs $LFS/tools chown -v lfs $LFS/sources su - lfs cd $LFS/sources wget ftp://mirror.cict.fr/lfs/lfs-packages/lfs-packages-6.4.tar tar xf lfs-packages-6.4.tar
Comme ça on es sûr que lfs est propriétaire des archives, pour ne plus avoir ton histoire de compilation en root pour le kernel
Re ;)
"J'espère que tu n'as pas mélanger encore les droits."
Non pas de danger je ne quitte plus le terminal et je décompresse et copie avec lfs depuis $LFS/sources (lequel contenu lui appartient à 100%) jusqu'a son /home/lfs qui lui appartient complètement aussi.
Plus besoin de root désormais.
Dans la doc, ce qui induit en erreur (quand on à pas compris l'usage de ../)
C'est à ce moment ci:
Lorsqu'on est fraîchement connecté en tant que lfs on se trouve dans son répertoire.
Hors la première commande donnée pour créer un répertoire est:
Ce qui revient en fait à remonter d'un cran à coté des répertoire lfs et initials dans /home
Et c'est fatalement que root doit intervenir.
Hors le but (et j'ai compris ça ensuite) est de créer tous les répertoires hors sources dans /home/lfs/
Donc la bonne commande départ pour moi est (depuis lfs)
Je recommence sur de meilleures bases et plus proprement :)
"J'espère que tu n'as pas mélanger encore les droits."
Non pas de danger je ne quitte plus le terminal et je décompresse et copie avec lfs depuis $LFS/sources (lequel contenu lui appartient à 100%) jusqu'a son /home/lfs qui lui appartient complètement aussi.
Plus besoin de root désormais.
Dans la doc, ce qui induit en erreur (quand on à pas compris l'usage de ../)
C'est à ce moment ci:
Lorsqu'on est fraîchement connecté en tant que lfs on se trouve dans son répertoire.
Hors la première commande donnée pour créer un répertoire est:
mkdir -v ../binutils/build
Ce qui revient en fait à remonter d'un cran à coté des répertoire lfs et initials dans /home
Et c'est fatalement que root doit intervenir.
Hors le but (et j'ai compris ça ensuite) est de créer tous les répertoires hors sources dans /home/lfs/
Donc la bonne commande départ pour moi est (depuis lfs)
mkdir -v ./binutils-build
Je recommence sur de meilleures bases et plus proprement :)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
11 août 2009 à 15:37
11 août 2009 à 15:37
Re,
Dans la doc, ce qui induit en erreur (quand on à pas compris l'usage de ../)
C'est à ce moment ci:
Lorsqu'on est fraîchement connecté en tant que lfs on se trouve dans son répertoire.
Hors la première commande donnée pour créer un répertoire est:
mkdir -v ../binutils/build
Je pense que tu n'as pas compris.
Donc la bonne commande départ pour moi est (depuis lfs)
mkdir -v ./binutils-build
Pas du tout, les commandes dans le livres sont correctes. Je les ai exécutées sans rien changer.
C'est vrai qu'on peut tout changer, mais ça ne vaut pas le coup.
Le répertoire de travail est /mnt/lfs/sources
Si on se connecte en lfs c'est puisque lfs a des droits sur /mnt/lfs/sources et /mnt/lfs/tools
En fait quand tu te connecte en lfs tu te trouveras en /home/lfs
Ce que ne dit pas le livre c'est de faire un cd /mnt/lfs/sources pour se positionner dans le répertoire sources qui sera le répertoire de travail.
C'est en ce moment que tu dois commencer.
Encore une chose.
Avant toute opération de configuration, patcher, compilation le livre suppose que tu as decompressé déjà l'archive et tu as fait un cd.
Prenons le cas de binutils
donc dans /mnt/lfs/sources tu as binutils-2.18.tar.bz2
Donc tu es dans /mnt/lfs/sources
et quand tu fais (donc tu te trouves en ce moment dans /mnt/lfs/sources/binutils-2.18 ) , il faut faire comme ça avec chaque archive (c'est l'étape N° 1)
En fait tu vas créer le répertoires binutils-build dans /mnt/lfs/sources qui est le répetoire parent de binutils-2.18
A ne pas oublier qu'après la compilation et installation tu dois supprimer /mnt/lfs/sources/binutils-build et /mnt/lfs/sources/binutils-2.18
Dans la doc, ce qui induit en erreur (quand on à pas compris l'usage de ../)
C'est à ce moment ci:
Lorsqu'on est fraîchement connecté en tant que lfs on se trouve dans son répertoire.
Hors la première commande donnée pour créer un répertoire est:
mkdir -v ../binutils/build
Je pense que tu n'as pas compris.
Donc la bonne commande départ pour moi est (depuis lfs)
mkdir -v ./binutils-build
Pas du tout, les commandes dans le livres sont correctes. Je les ai exécutées sans rien changer.
C'est vrai qu'on peut tout changer, mais ça ne vaut pas le coup.
Le répertoire de travail est /mnt/lfs/sources
Si on se connecte en lfs c'est puisque lfs a des droits sur /mnt/lfs/sources et /mnt/lfs/tools
En fait quand tu te connecte en lfs tu te trouveras en /home/lfs
Ce que ne dit pas le livre c'est de faire un cd /mnt/lfs/sources pour se positionner dans le répertoire sources qui sera le répertoire de travail.
su - lfs cd /mnt/lfs/sources
C'est en ce moment que tu dois commencer.
Encore une chose.
Avant toute opération de configuration, patcher, compilation le livre suppose que tu as decompressé déjà l'archive et tu as fait un cd.
Prenons le cas de binutils
donc dans /mnt/lfs/sources tu as binutils-2.18.tar.bz2
Donc tu es dans /mnt/lfs/sources
tar xjf binutils-2.18.tar.bz2 cd binutils-2.18
et quand tu fais (donc tu te trouves en ce moment dans /mnt/lfs/sources/binutils-2.18 ) , il faut faire comme ça avec chaque archive (c'est l'étape N° 1)
mkdir -v ../binutils-build
En fait tu vas créer le répertoires binutils-build dans /mnt/lfs/sources qui est le répetoire parent de binutils-2.18
A ne pas oublier qu'après la compilation et installation tu dois supprimer /mnt/lfs/sources/binutils-build et /mnt/lfs/sources/binutils-2.18
"Ce que ne dit pas le livre c'est de faire un cd /mnt/lfs/sources pour se positionner dans le répertoire sources qui sera le répertoire de travail."
Argh!
Bon, c'est passé grâce aux liens symboliques crées vers /tools ...heureusement (et par deux fois)
À la prochaine je me positionne dans /sources c'est vrai que c'est plus cohérent que dans /home/lfs
Mais:
"La documentation de GCC recommande de ne pas construire GCC dans le répertoire des sources mais dans un répertoire de construction dédié"
M'a induit en erreur :S
C'est vrai que cette doc est très instructive, je plussoie, mais dédiées à ceux qui savent la lire...
Avant d'appliquer le patch pour binutils comme donné en toute première ligne sur la doc,
il faut avoir utilisé quelques fois cp, tar -jxf et mv....
Argh!
Bon, c'est passé grâce aux liens symboliques crées vers /tools ...heureusement (et par deux fois)
À la prochaine je me positionne dans /sources c'est vrai que c'est plus cohérent que dans /home/lfs
Mais:
"La documentation de GCC recommande de ne pas construire GCC dans le répertoire des sources mais dans un répertoire de construction dédié"
M'a induit en erreur :S
C'est vrai que cette doc est très instructive, je plussoie, mais dédiées à ceux qui savent la lire...
Avant d'appliquer le patch pour binutils comme donné en toute première ligne sur la doc,
il faut avoir utilisé quelques fois cp, tar -jxf et mv....
8 août 2009 à 11:24
"Le plaisir de te casser la tête de faire de A à Z, tu le laisses à qui? "
Oui, donc démarrer sur une image minimale c'est pas pareil, je viens de comprendre qu'avec LFS on démarre encore plus tôt (à zero quoi) et on doit construire tout l'arbre système sois même, ok vu :)
"Tu parle de PDF depuis le site de LFS ?! "
Oui la version Française du livre 6.4,
bon y'a plus qu'a me lancer, merci ;)