# Probleme nach Python Update 2.4 --> 2.5

## 3PO

Hallo Zusammen,

Ich habe auf meinem System Python upgedatet, - was übrigens einer Neuinstallation wohl in nichts nachsteht.   :Laughing: 

Eigentlich läuft ja alles, bis eben auf das wichtigste, nämlich der VDR.

Wenn ich den starten will bekomme ich diese Meldungen:

```
cat: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

seq: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
```

Hier nochmal die komplette Ausgabe

Ich habe auch schon versucht den VDR neu kompilieren, leider ohne Erfolg.

Der VDR lässt sich zwar problemlos und ohne Fehlermeldungen kompilieren. jedoch habe beim Starten ich o.g. Fehler.

Hat von Euch einer eine Idee wie man das fixen könnte?

----------

## Evildad

Welche Version von Glibc hast Du denn drauf und hast auch schonmal versucht eben diese neu zu kompilieren?

Evtl. fehlt auch einfach nur der Symlink?

```
lrwxrwxrwx 1 root root      13 Sep  8 20:57 /lib/libc.so.6 -> libc-2.6.1.so
```

----------

## Fauli

Hast du mal probiert, in /etc/conf.d/vdr die Variable FORCE_OLD_THREADS auf "no" zu setzen?

```
# force the use of old linux threads

# instead of new posix threads (NPTL)

#   allowed values: yes no

#   default: yes

FORCE_OLD_THREADS="no"
```

----------

## 3PO

 *Fauli wrote:*   

> Hast du mal probiert, in /etc/conf.d/vdr die Variable FORCE_OLD_THREADS auf "no" zu setzen?
> 
> 

 

Nein, ich habe gerade gentoo neu installiert. (Da ist ja Python 2.5 gleich mit dabei   :Wink: )

Nachdem ldconfig nichts brachte und redev-rebuild gar nicht mehr ging habe ich aufgegeben.

Aber mal so nebenbei gefragt.

Wozu genau ist denn die Variable FORCE_OLD_THREADS gut?

----------

## Fauli

Linux verwendete früher eine andere Bibliothek, um Threads zu erzeugen, nämlich "LinuxThreads" im Gegensatz zu der effizienteren "Native POSIX Thread Library" (NPTL), die heutzutage verwendet wird (siehe auch http://de.wikipedia.org/wiki/Native_POSIX_Thread_Library).

Wenn du die Variable "FORCE_OLD_THREADS" nicht setzt, wird als Default "yes" angenommen. Das hat zur Folge, dass die Variable "LD_ASSUME_KERNEL" auf "2.4.1" gesetzt wird, was wiederum für den Dynamic Linker bedeutet, dass er die Bibliotheken zu laden versucht, die die "LinuxThreads" verwenden.

sys-libs/glibc-2.6.1, das seit kurzem "stable" ist, hat keine USE-Flags "nptl" und "nptlonly" mehr, im Unterschied zu den früheren Versionen. Möglicherweise bedeutet das, dass keine Unterstützung mehr für die "LinuxThreads" installiert wird und NPTL jetzt die einzige Option ist. (Das ist meine Vermutung. Kann die jemand bestätigen?)

Jedenfalls solle das Setzen von "FORCE_OLD_THREADS=no" das Setzen von "LD_ASSUME_KERNEL" verhindern, damit die richtigen Bibliotheken aus "/lib" geladen werden.

----------

## 3PO

Thx @ Fauli für die ausfühliche Info.

Hätte ich das eher gewusst, wäre mit evtl. eine Neuinstallation erspart geblieben.   :Laughing: 

Leider bestand das Problem nach der Neuinstallation immer noch. --> KLICK

----------

