# emerge @preserved-rebuild=Endlosschleife [solved]

## Randy Andy

Hallo Mitstreiter.

Obwohl hier nach einem emerge @preserved-rebuild alle 11 betroffenen Pakete erfolgreich compiliert werden, meldet mir portage anschließend wieder exakt die gleichen Pakete als  @preserved-rebuild.

Wie kann ich diese Endlosschleife auflösen, woran kann das liegen?

Hier die Ausgabe von Portage:

```

!!! existing preserved libs:

>>> package: sys-libs/glibc-2.12.2

 *  - /lib/libthread_db-1.0.so

 *  - /lib/libthread_db.so.1

 *      used by /opt/icedtea6-bin-1.10.4/jre/lib/i386/libsaproc.so (dev-java/icedtea-bin-1.10.4)

>>> package: sys-libs/e2fsprogs-libs-1.41.14

 *  - /lib/libss.so.2

 *  - /lib/libss.so.2.0

 *      used by /sbin/debugfs (sys-fs/e2fsprogs-1.42_pre0702)

 *  - /lib/libcom_err.so.2

 *  - /lib/libcom_err.so.2.1

 *      used by /lib/libext2fs.so.2.4 (sys-fs/e2fsprogs-1.42_pre0702)

 *      used by /sbin/badblocks (sys-fs/e2fsprogs-1.42_pre0702)

 *      used by /sbin/debugfs (sys-fs/e2fsprogs-1.42_pre0702)

 *      used by 20 other files

>>> package: dev-libs/libffi-3.0.9-r2

 *  - /usr/lib/libffi.so.5

 *  - /usr/lib/libffi.so.5.0.10

 *      used by /usr/bin/g-ir-compiler (dev-libs/gobject-introspection-0.10.8)

 *      used by /usr/lib/firefox/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by /usr/lib/firefox/sdk/lib/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by 11 other files

Use emerge @preserved-rebuild to rebuild packages using these libraries

```

Danke für Hinweise und Lösungsvorschläge.

----------

## Max Steel

Diese Dateien scheinen entweder Dateien zu sein die als Überbleibsel übrigblieben.

Oder du hast etwas händisch installiert wogegen jetzt viele deiner neu emergten Programme linken.

Die 2 Möglichkeiten fallen mir sofort ein.

----------

## AmonAmarth

quick'n'dirty: 

```
emerge -C <package> && emerge -1 <package>
```

ab und an tritt das von dir beschrieben problem auf, woran das liegt habe ich mangels zeit nie rausfinden können. obiges hat aber immer zum ziel geführt und bei mir noch keine nachteiligen effekte hervorgerufen

gruß

----------

## Josef.95

Gleiches hatte ich vor ein paar Jahren mit den e2fsprogs-libs auch mal, mir half damals dieser Tipp weiter:  *Quote:*   

> Check which files it is protecting:
> 
> portageq list_preserved_libs /
> 
> Then identify which package they belong to (equery f filename).
> ...

  Quelle: http://www.gossamer-threads.com/lists/gentoo/user/173997#173997

Ansonsten siehe auch im Bug 230257 - @preserved-rebuild contains packages that have already been rebuilt 

----------

## Randy Andy

Hallo Leute.

Vielen Dank für die zahlreichen Anregungen.

Max Steel, nur zur Info. Ich hatte kein Paket händisch an Portage vorbei installiert.

Zuerst bin ich erst einmal gemäß Josefs Ratschlag vorgegangen (Danke Josef) und habe besagte Dateien von Hand gelöscht, und dann die Pakete per oneshot noch einmal installiert.

```

portageq list_preserved_libs /

Die dort ausgegebenen Dateien nach Überprüfung gelöscht:

rm /usr/lib/libffi.so.5.0.10 /usr/lib/libffi.so.5

rm /lib/libcom_err.so.2.1 /lib/libss.so.2 /lib/libss.so.2.0 /lib/libcom_err.so.2

rm /lib/libthread_db.so.1 /lib/libthread_db-1.0.so

Dies dann neu gebaut:

emerge -1av dev-libs/libffi sys-libs/e2fsprogs-libs sys-libs/glibc

```

Danach sah's dann schon besser aus, aber immer noch nicht vollständig gefixed, guckt ihr:

```

!!! existing preserved libs:

>>> package: dev-libs/libffi-3.0.9-r2

 *  - /usr/lib/libffi.so.5

 *  - /usr/lib/libffi.so.5.0.10

 *      used by /usr/bin/g-ir-compiler (dev-libs/gobject-introspection-0.10.8)

 *      used by /usr/lib/firefox/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by /usr/lib/firefox/sdk/lib/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by 11 other files

Use emerge @preserved-rebuild to rebuild packages using these libraries

```

Es zeigt mir also immer noch Version 3.0.9-r2 an, obwohl wiederholt und alleinig Version libffi-3.0.10

installiert war und wurde.

Also hab ich dann, wie von AmonAmarth vorgeschlagen, betroffenes Paket gelöscht und wieder installiert, dann sah's wie folgt aus:

```

!!! existing preserved libs:

>>> package: dev-libs/libffi-3.0.10

 *  - /usr/lib/libffi.so.5

 *  - /usr/lib/libffi.so.5.0.10

 *      used by /usr/bin/g-ir-compiler (dev-libs/gobject-introspection-0.10.8)

 *      used by /usr/lib/firefox/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by /usr/lib/firefox/sdk/lib/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by 11 other files

Use emerge @preserved-rebuild to rebuild packages using these libraries

```

Nun will er immerhin nur noch 9 statt wie vorher 11 Pakete neu bauen, diesmal anscheinend gegen die richtige, weil installierte Version. Bin daher guter Dinge dass es nun fruchtet, aber das dauert nun mal wieder ein paar Stündchen. Gebe dann nach Abschluss wieder feedback.

Danke schon mal an Alle. Gruß, Andy.

----------

## Randy Andy

Hm,

nach erfolgreicher Kompilation aller 9 Pakete, sagt mir Portage doch tatsächlich schon wieder:

```

!!! existing preserved libs:

>>> package: dev-libs/libffi-3.0.10

 *  - /usr/lib/libffi.so.5

 *  - /usr/lib/libffi.so.5.0.10

 *      used by /usr/bin/g-ir-compiler (dev-libs/gobject-introspection-0.10.8)

 *      used by /usr/lib/firefox/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by /usr/lib/firefox/sdk/lib/libxul.so (www-client/firefox-7.0.1-r1)

 *      used by 11 other files

Use emerge @preserved-rebuild to rebuild packages using these libraries

```

In meiner Verzweiflung hab ich dann noch mal das gemacht:

```

portageq list_preserved_libs /

rm /usr/lib/libffi.so.5.0.10 /usr/lib/libffi.so.5

emerge -Ca dev-libs/libffi

emerge -1av dev-libs/libffi

```

Seitdem scheint Ruhe zu sein, schon ein wenig seltsam, aber das Ergebnis zählt halt, gell.

Danke Euch nochmal, markiere den Fall als gelöst.

----------

