# Linux Threads

## ErniBrown

Devo lavorare con un vecchio programma, che devo aggiornare. Il problema è che ho bisogno delle vecchie linux threads per poter fare dei test comparativi, come faccio a installarle? Ho provato a togliere nptlonly dalle use, ma emerge non propone niente di nuovo!

----------

## mrfree

In che senso non propone niente di nuovo?

```
[+  D ] nptlonly (sys-libs/glibc):

Disables building the linuxthreads fallback in glibc ebuilds that support building both linuxthreads and nptl.
```

Disabilitando la useflag un bel emerge -uDvaN world dovrebbe proporti di ricompilare le glibc

----------

## ErniBrown

 *mrfree wrote:*   

> In che senso non propone niente di nuovo?
> 
> ```
> [+  D ] nptlonly (sys-libs/glibc):
> 
> ...

 

Già provato, non ha funzionato. Credo che dipenda dal fatto che le vecchie linux threads non fanno parte delle versioni più aggiornate di glibc.

E' possibile installare più copie di glibc? Ho visto che in portage c'è ancora la 2.qualcosadisufficientementevecchio

----------

## randomaze

 *ErniBrown wrote:*   

> E' possibile installare più copie di glibc? Ho visto che in portage c'è ancora la 2.qualcosadisufficientementevecchio

 

Non so se sono slotted (dovresti dare un occhiata dentro l'ebuild), ma così a occhio mi sa di no perché sarebbe una cosa troppo incasinata da gestire.

IMHO la via più semplice è quella di prendere uno stage3 "datato", scompattarlo e accederci in chroot: li dentro installerai il tuo programma.

----------

## TwoMinds

 *randomaze wrote:*   

> IMHO la via più semplice è quella di prendere uno stage3 "datato", scompattarlo e accederci in chroot: li dentro installerai il tuo programma.

 

...se e' troppo vecchio lo stage3 occorre aver compilato le glibc con la USE glibc-compat20 altrimenti il chroot fallisce...

----------

## ErniBrown

 *randomaze wrote:*   

>  *ErniBrown wrote:*   E' possibile installare più copie di glibc? Ho visto che in portage c'è ancora la 2.qualcosadisufficientementevecchio 
> 
> Non so se sono slotted (dovresti dare un occhiata dentro l'ebuild), ma così a occhio mi sa di no perché sarebbe una cosa troppo incasinata da gestire.
> 
> IMHO la via più semplice è quella di prendere uno stage3 "datato", scompattarlo e accederci in chroot: li dentro installerai il tuo programma.

 

bella idea, non ci avevo pensato! Adesso provo.

----------

## djinnZ

oltre ad attivare la use glibc-compat20 devi installare sys-libs/libstdc++-v3 o ti ritroverai sul groppone il gcc 3.x.

 *randomaze wrote:*   

> Non so se sono slotted (dovresti dare un occhiata dentro l'ebuild), ma così a occhio mi sa di no perché sarebbe una cosa troppo incasinata da gestire.

 se non ricordo male il linker non ha la capacità di gestire versioni concorrenti della libc. In ogni caso il chroot è una soluzione buona per far andare un programma con le vecchie librerie non per fare dei testi di stabilità o prestazioni, secondo me.

----------

