# [centrino et gentoo 2005.0] tout ca pour gcc 3.4 et stage1

## SunMetis

Salut fidele communaute gentoo !! J'utilise gentoo 2005.0 et je veux installer tout ca sur mon centrino.!!

Je veux absolument utiliser les CFLAGS= mtune=pentium-m etc etc etc a partir du stage 1. Le probleme c que c gere a partir de gcc 4 et que sur le cd de gentoo 2005.0 d'origine c gcc 3.3.5. Alors lors de ma precedente installation on m'avait aider sur le forum. Et j'avais appliquer la methode suivante .... Attentionc po simple 

Je boot sur livecd etc etc apres le premier emerge --sync j'ajoute dans package.keywords gcc je rentrais dans make.conf en clags et chost je mettai i686 j'installais alors gcc 3.4 ensuite je switchais par defaut dessus et la je commencais reelement l'install de la gentoo (bootstrap  puis stage 2 et 3)avec les optimisations pentium-m etc etc 

Aujourd'hui je veux appliquer la meme methode car par accident j'ai devider de tout reinstaller SEULEMENT je galere sur un probleme que j'avais pas rencontre la fois precedente ..

Des que j'essaye d'installer gcc 3.4 avant le bootstrap donc g encre rien toucher j'ai une erreur de compilation :

configure error C++ preprocessor ... "lib cpp " fails sanity check 

ERROR sys-libs/db-4.2.52_p2 failed

Voila alors je vous ecris depuis links sans rien de plus alors pardoner la mise en forme qui doit pas etre correcte

Y 'a t'il un moyen d'installer gcc 3.4 pour demarrer l'install depuis le stage 1 

Comment resoudre cette erreur alors  j'ai touche a rien ..

Merci les gars

----------

## zdra

 *SunMetis wrote:*   

> Le probleme c que c gere a partir de gcc 4 et que sur le cd de gentoo 2005.0 d'origine c gcc 3.3.5

 

 *SunMetis wrote:*   

> Y 'a t'il un moyen d'installer gcc 3.4 pour demarrer l'install depuis le stage 1

 

Tu veux gcc 4 (4.0.0) ou 3.4.0 ?? Si c'est le 4.0 je te déconseil très fortement d'y penser avant au moins qu'il soit hardmasqué dans portage, pour l'instant il y est mais sans keyword aucun  :Smile: 

Sinon pour gcc 3.4 je crois que le mieux c'est de faire lors de l'installation "emerge sync" puis d'installer normalement ton stage1 qui te compilera avec le gcc du liveCD tout ce qu'il te faut, dont la derniere version de gcc-3.4 si tu est en ~arch. Ensuite tu refais simplement un "emerge -e world" puis qu'il recompile tout avec ton nouveau gcc  :Wink: 

----------

## naerex

 *SunMetis wrote:*   

> 
> 
> Je veux absolument utiliser les CFLAGS= mtune=pentium-m etc etc etc a partir du stage 1

 

Attention -mtune crée des binaires compatibles, il est préferable d'utiliser -march qui optimisera au mieux pour ton processeur.

voici mes CFLAGS:

```

CFLAGS="-O2 -pipe -march=pentium-m -fomit-frame-pointer"

```

Il est simple mais très efficace avec un centrino.

----------

## Adrien

Si j'ai bien compris ce que tu veux, tu peux suivre ce tuto: https://forums.gentoo.org/viewtopic-t-319349.html

Par contre c'est assez long... :Wink: 

----------

## SunMetis

alors alors tout d'abord merci a vous de m'aider

C effectivemnt gcc 3.4 et non 4.X que je veux installer !! Je comprends mieux .. Un d'entre vous a un centrino c encore mieux.

naerex si je modifie make.conf des le debut avant le stage 1 en mettant march=pentium-m (qsui n'est pas gere par le gcc 3.3.5) cela ne risque pas de faire une erreur ......? Tu as quoi comme portable au fait ?? 

<Voila merci les gars  :Wink: 

----------

## SunMetis

les gars je suis au bord de la crise de nerfs !!

J'ai pas avance d'un poil sauf dans l'incomprehension .... J'ai tout essayer mais a tous les coups erreur de compilation j'essaye de pas trop modifier le gcc d'origine 3.3.5 pour eviter l'erreur et que le gcc 3.4.4 s'install sans problemes ( je fais juste un petit i686 a la place de i386) EHH BEN MALGRE CA CA MER.. !!!

errreur a cause de ds... et c++ quelque chose comme ca ... 

Mais impossible de meme arriver au stage 1 avant ca passait nikel pourtant C A RIEN COMPRENDRE!!

A ceux qui ont un centrino helllp ou je crois que gentoo tchao !!

 :Confused: 

----------

## Enlight

Bon c'est au bootstrap que ça coince, oki? Donc on va tenter un truc hautement experimental.

Que dit echo CXX?

Si ça dit g++, essaye voir :

```
CXX="gcc" /usr/portage/chépukoi/bootstrap.sh 
```

Si ça marche, faudra remettre CXX à la valeur g++ ensuite.

edit, puis sinon on trifouillera le bootstrap.sh à tête reposée mais on va triompher  :Very Happy: 

----------

## SunMetis

oki je vais tenter !!!mais pas moyen d'avoir un stage 1 avec gcc 3.4??  et le gentoo avec l'install graphique ??

----------

## Enlight

Ben faudrait regarder le bootstrap.sh et voir s'il accepte les keywords comme emerge

----------

## El_Goretto

 *SunMetis wrote:*   

> oki je vais tenter !!! [...]  et le gentoo avec l'install graphique ??

 

Mouhahahahahahaha!!  :Twisted Evil: 

...

Oulàlààààà... Ca sonnait pas caverneux comme un rire de troll çà?  :Shocked: 

----------

## NiLuJe

 *Adrien wrote:*   

> Si j'ai bien compris ce que tu veux, tu peux suivre ce tuto: https://forums.gentoo.org/viewtopic-t-319349.html
> 
> Par contre c'est assez long...

 

 :Wink: 

Ça reviendra à un Stage 1, mais sans éventuels de problèmes de dépendances circulaires .. ; ) (Et plus long,oui, mais peut-être moins long que de trouver ce qui merdoie chez toi en ce moment ^^)

----------

## Enlight

Il l'a peut être déjà suivi et veux voir autre chose  :Wink:  celà dit depuis 2005.0 le problème des dépendances circulaires a été fixé.

----------

## SunMetis

je comprend pas en plus je vous jure j'avais deja installe mon linux avec gcc 3.4 sans probleme 

Ce que je propose : Enlight je vais mettre ma becanne sur ssh s'il faut et tu essayera de lancer la commande ... peut etre que cela te diras quelque chose 

J'ai que mon portable et je perd un temps fou !!! Je voulais faire l'install a partir de la knopix histore d'avoir un systeme pendant l'install mais PFFFF un probleme n'arrive pas seul j'ai un souci des que je boot j'ai pas de serveur x je pense que knoppix supporte mal le pci-x vu que le noyau n'est pas le 2.6.11

HHHHHHHHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA !!!

----------

## SunMetis

 :Sad:   alors le stage 1 est ok j'ai switcher sur le bon gcc par contre au niveau du stage 2 g trouve le probleme

checking for C compiler default output... configure: error: C compiler cannot create executable

voila en passant mon:

CFLAGS="-O3 -march=pentium-m -mtune=pentium-m -pipe -ftracer -fomit-frame-pointer -ffast-math -momit-leaf-frame-pointers"

----------

## Enlight

 *SunMetis wrote:*   

>   alors le stage 1 est ok j'ai switcher sur le bon gcc par contre au niveau du stage 2 g trouve le probleme
> 
> checking for C compiler default output... configure: error: C compiler cannot create executable
> 
> voila en passant mon:
> ...

 

1) Qu'est ce qui a fait que le stage 1 est passé d'un coup???

2) ça doit être le s de momit-leaf-frame-pointers (de tête)

3) dégage -ftracer et surtout -ffast-math; momit-leaf-frame-pointers est inutile puisque tu f[b]omit[/b les frame pointers après je pense perso que mtune n'estpas une super idée car il alourdi les binaires et si jamais c'est parsé comme les O*, il faudrait mettre mtune en premier puis ensuite march.

sinon mets un truc du genre -O2 -O3 dès fois qu'un ebuild mal foutu enleverrai -O3 sans le remplacer par -O2

Et sinon c'est complétement perso mais sur un gcc 3.4.* -O3 me parrais moins bien que -O2 y compris en runtime.

----------

## SunMetis

ok alors g allege et ca plante plus ...AUSSI vite ( a tel point que j'y croyais hehe) Au passage je ne pensais pas qu'il y avait un ordre precis .... 

alors alors ca avance .... voila la nouvelle erreur 

cc1: error: bad value (pentium-m) for -march= switch

cc1: error: bad value (pentium-m) for -mcpu= switch

make[2]: *** [gengenrtl.o] Error 1

make[2]: Leaving directory `/var/tmp/portage/gcc-3.3.6/work/build/gcc'

make[1]: *** [stage2_build] Error 2

make[1]: *** Waiting for unfinished jobs....

echo timestamp > clean_s1

make[1]: *** Waiting for unfinished jobs....

make[1]: Leaving directory `/var/tmp/portage/gcc-3.3.6/work/build/gcc'

make: *** [bootstrap-lean] Error 2

!!! ERROR: sys-devel/gcc-3.3.6 failed.

!!! Function gcc_do_make, Line 1212, Exitcode 2

!!! emake failed with bootstrap-lean

!!! If you need support, post the topmost build error, NOT this status message.

Je suis pas une bete de la gentoo mais je crois que gcc 3.6 me poursuis et ne prends pas en compte certaines options qui sont que pour le gcc 3.4 (qui est pourtant celui par default et qui est correctement installe avecle bootstrap et tout et tout .... )

 :Evil or Very Mad: 

----------

## SunMetis

au fait pur le stage 1 g juste changer i686 a la place de i386 et puis modifier package.keywords pour gcc et hop c passe g switcher sur le new gcc et hop je lace le stage 2 apres avoir modifier chost etc etc 

-02 -03 passe pas il me dit repond : fonction non reconnue

----------

## [vector]

Juste comme ça, C'est Ox avec un O majuscule pas 0.

----------

## SunMetis

ohhhh la honte desole !! mais pares tant de modifs ne suis-je pas oblige de refaire un bootstrap? A moins que bootstrap ne s'insteresse qu"a CHOST? le cas echeant pas de soucis je n'ai touche qu"a CFLAGS

. :Cool: 

----------

## Jerem

Je suis un heureux possesseur de pentium M, plus précisément d'un portable Centrino (Inspiron 8600).

Voilà ce que j'ai essayé :

Stage 3, installation de Gcc3.4.3 grâce au wiki, tunage de make.conf en -march=pentium-m, emerge -e world.

Voilà ce que j'ai obtenu : un système décevant qui m'a pris beaucoup de temps à installer, et qui n'est finalement pas plus rapide qu'avec i686 comme CFLAG. D'après ce que j'ai ouï dire, GCC ne considère le pentium M que comme un gros pentium 2 avec des instructions en plus. Il ne tient absoluement pas compte de la prédiction de branche améliorée et ne compile pas les programmes pour qu'ils tirent parti des algorithmes d'économie d'énergie spécifiques(contrairement au compilateur ICC de Intel qui fait ça très bien).

Je te conseille donc ceci :

-march=pentium3 -msse2

Cela te donnera un système stable, aux CFLAGS très optimisés mais très communs,testés, et stables, et utilisable dès gcc-3.3...

Tu te fais chier pour rien à mon avis.

----------

## naerex

Résumé des differents processeurs x86 pour gcc. (tiré de la doc GCC)

 *Quote:*   

> i386 : Original Intel's i386 CPU.
> 
> i486 : Intel's i486 CPU. (No scheduling is implemented for this chip.)
> 
> i586, pentium : Intel Pentium CPU with no MMX support.
> ...

 

----------

## sireyessire

 *naerex wrote:*   

> Résumé des differents processeurs x86 pour gcc. (tiré de la doc GCC)
> 
>  *Quote:*   i386 : Original Intel's i386 CPU.
> 
> i486 : Intel's i486 CPU. (No scheduling is implemented for this chip.)
> ...

 

oui mais certains ne sont disponibles que pour >=gcc-3.4 (notamment le pentium-m )

----------

## ultrabug

J'ai installé ma gentoo avec gcc-3.3.5 sur mon centrino il y a deux jours. J'ai utilisé les CFLAGS suivants et franchement ca dépote largement assez (j'en suis meme impressioné)

http://gentoo-wiki.com/Safe_Cflags

Alors tout ca pour utiliser un pentium-m c'est se faire c*** pour pas grand chose selon moi  :Sad: 

----------

## sireyessire

 *ultrabug wrote:*   

> J'ai installé ma gentoo avec gcc-3.3.5 sur mon centrino il y a deux jours. J'ai utilisé les CFLAGS suivants et franchement ca dépote largement assez (j'en suis meme impressioné)
> 
> http://gentoo-wiki.com/Safe_Cflags
> 
> Alors tout ca pour utiliser un pentium-m c'est se faire c*** pour pas grand chose selon moi 

 

sans aller juste qu'à la sécurité extrème (car alors le mieux c'est limite du -mcpu=i386 -O0 )

moi pour le centrino j'utilise:

CFLAGS="-Os -march=pentium3 -msse2 -fomit-frame-pointer -pipe"

mais tu peux préférer le -O2 au -Os (voire le -O3)

le -msse2 est utile vu que le -march=pentium3 ne te fournit que le sse.

----------

## Jerem

Je confirme qu'il n'y a aucun gain de performances entre -march=pentium3 -msse2 et -march=pentium-m.

Ce dernier est juste peu testé, et donc sujet à controverse.

Si tu veux une machine rapide, choisis le bon système de fichier, mets les partitions les plus "stressées" en bout de disque, patche ton noyau, mais par dessus tout évite de sur-optimiser ton processeur, car tu t'en mordras les doigts quand tu auras un message d'erreur exotique toutes les trois compilations.

Crois-moi, compiler KDE avec l'angoisse que ça plante au bout de 5 heures de compilation est très désagréable.

----------

## sireyessire

 *Jerem wrote:*   

> Crois-moi, compiler KDE avec l'angoisse que ça plante au bout de 5 heures de compilation est très désagréable.

 

l'autre solution étant de pas compiler kde ... poussez pas je suis dehors  :Wink: 

----------

## scout

 *sireyessire wrote:*   

>  *Jerem wrote:*   Crois-moi, compiler KDE avec l'angoisse que ça plante au bout de 5 heures de compilation est très désagréable. 
> 
> l'autre solution étant de pas compiler kde ... poussez pas je suis dehors 

 

Par solidarité, je veux bien venir avec toi dehors

----------

