# gcc nach Installation von binutils zerschossen, wie weiter?

## deranonyme

Hallo

Nach der Installaltion von boost, binutils, mpfr, gmp, nspr will mein gcc nicht mehr.

```
checking for C compiler default output file name... configure: error: in `/var/tmp/portage/sys-devel/gcc-4.4.5/work/build':

configure: error: C compiler cannot create executables
```

Wie kriege ich den wieder fit? Ich vermute die Binutils sind schuld, aber wie weiter?

```
gcc-config -l

 [1] x86_64-pc-linux-gnu-4.4.5 *
```

Sieht nicht wirklich gut aus. Da müssten mehr Profile sein.   :Crying or Very sad: 

Danke Frank

----------

## Josef.95

Schau doch mal ob deine neue binutils Version auch aktiv gesetzt ist: 

```
eselect binutils show
```

Oder setze sie im Zweifel noch mal neu.

----------

## deranonyme

 *Josef.95 wrote:*   

> Schau doch mal ob deine neue binutils Version auch aktiv gesetzt ist: 
> 
> ```
> eselect binutils show
> ```
> ...

 

```
franks mail # eselect binutils show

x86_64-pc-linux-gnu-2.21.1

franks mail # eselect binutils list

Installed binutils for target x86_64-pc-linux-gnu

  [1]   2.21.1 *

franks mail # eselect binutils set 1

!!! Error: Profile "x86_64-pc-linux-gnu-2.21.1" is already active!

exiting

```

Sollte okay sein.

Frank

----------

## arfe

lafilefixer --justfixit gemacht?

Wenn alles nicht hilft, würde ich mir ein stage3 holen und dann ein emerge -e system machen.

----------

## deranonyme

 *arfe wrote:*   

> lafilefixer --justfixit gemacht?
> 
> Wenn alles nicht hilft, würde ich mir ein stage3 holen und dann ein emerge -e system machen.

 

Schei.... ich vermute darauf läuft es hinauf.

Frank

----------

## arfe

 *deranonyme wrote:*   

>  *arfe wrote:*   lafilefixer --justfixit gemacht?
> 
> Wenn alles nicht hilft, würde ich mir ein stage3 holen und dann ein emerge -e system machen. 
> 
> Schei.... ich vermute darauf läuft es hinauf.
> ...

 

Auf was? Stage3 holen? Du muss Dein System nicht komplett neu aufsetzen! Sondern nur das stage3 holen und drüber spielen

und ein emerge -e system machen.

1. passendes stage3 holen (AMD64?)

2. auspacken in /

3. emerge --sync

4. emerge -e system

----------

## Josef.95

Naja, ich denke man sollte nicht wegen jedem kleinen Wewechen gleich zur stage3 greifen und eine Neuinstallation machen. Ein gut gepflegtes Gentoo überlebt doch normalerweise die Hardware  :Wink: 

Poste doch sonst bitte mal ein paar mehr Infos.

Welches Paket konnte denn zuletzt noch erfolgreich compiliert und installiert werden?

Um welches Paket/Version geht es denn aktuell?

Die "emerge --info" Ausgabe und und die komplette build.log wären eventuell auch hilfreich. (am besten via NoPaste Service)

----------

## deranonyme

 *Josef.95 wrote:*   

> Naja, ich denke man sollte nicht wegen jedem kleinen Wewechen gleich zur stage3 greifen und eine Neuinstallation machen. Ein gut gepflegtes Gentoo überlebt doch normalerweise die Hardware 
> 
> Poste doch sonst bitte mal ein paar mehr Infos.
> 
> Welches Paket konnte denn zuletzt noch erfolgreich compiliert und installiert werden?
> ...

 

okay, dann wollen wir mal:

letztes durchgelaufenes Update:

http://nopaste.info/66848f1670.html

emerge.info:

http://nopaste.info/473a3c0174.html

build.log

http://nopaste.info/96ea7cef63.html

config.log

http://nopaste.info/ecdb37e2df.html

Ein revdep.rebuild fordert den gcc an. Deshalb vermute ich das ich das erforderlich revdep-rebuild nach dem Update unterschlagen habe und deshalb die Probleme jetzt habe.

Danke Frank

----------

## arfe

Meines erachtens bleibt Dir nichts übrig, als das stage3 drüber zu spielen, weil Du dir dein Toolchain zerschossen hast. Aber warten wir mal die Meinung von Josef.95 ab.

----------

## Josef.95

Aus deiner config.log  *Quote:*   

> 
> 
> ```
> configure:3337: checking for C compiler default output file name
> 
> ...

 

Schau doch mal ob dieser Thread zunächst weiterhilft -->  [SOLVED] gcc doesn't want to recompile

----------

## arfe

 *Josef.95 wrote:*   

> Aus deiner config.log  *Quote:*   
> 
> ```
> configure:3337: checking for C compiler default output file name
> 
> ...

 

Ja, das mit dem Symlink funktioniert. Aber man sollte unbedingt nach dem rebuilded system lafilefixer --justfixit machen, damit die .la von libgmp umgeschrieben wird.

----------

## deranonyme

 *Josef.95 wrote:*   

> Aus deiner config.log  *Quote:*   
> 
> ```
> configure:3337: checking for C compiler default output file name
> 
> ...

 

Danke. Der gcc Kompiliert erst mal vor sich hin. Das mit dem Link kann ja nicht die endgültige Lösung sein? Was kann, soll ich denn jetzt noch tun?

lafilefixer --justfixit ist schon klar. Aber kann man diese Lösung später noch korrigieren, oder soll die  libgmp.so.3 neu gebaut werden? So recht komme ich da nicht mit.

Frank

----------

## Josef.95

Im der aktuellen =gmp-5.0.2 gibt es keine libgmp.so.3 mehr.

Du hast die libgmp.so.3 vermutlich vor dem empfohlenen  *Quote:*   

> >>> Messages generated by process 10109 on 2011-08-29 19:49:33 EDT for package dev-libs/gmp-5.0.2:
> 
> WARN: postinst
> 
> Old versions of installed libraries were detected on your system.
> ...

  entfernt?

(das Zitat stammt aus diesem Thread)

 *deranonyme wrote:*   

> Das mit dem Link kann ja nicht die endgültige Lösung sein? Was kann, soll ich denn jetzt noch tun?

 

Wie schaut es denn aus wenn du den Symlink nach dem rebuild von gcc wieder entfernst?

also zb beim "revdep-rebuild -i"

----------

## deranonyme

 *Josef.95 wrote:*   

> 
> 
>  *deranonyme wrote:*   Das mit dem Link kann ja nicht die endgültige Lösung sein? Was kann, soll ich denn jetzt noch tun? 
> 
> Wie schaut es denn aus wenn du den Symlink nach dem rebuild von gcc wieder entfernst?
> ...

 

Alles bestens. Ich hab dem Link entfernt und jetzt läuft alles wieder. Das revdep-rebuild mit Link hat also alles repariert.

Danke

----------

## Cruel

Falls es nicht geklappt hätte, hätte ich ansonsten mal diesen Leitfaden durchgearbeitet: http://www.gentoo.de/doc/de/gcc-upgrading.xml

Hatte so ein ähnliches Problem und diese Anleitung hat mir dabei geholfen.

----------

