OVH Cloud OVH Cloud

Un deuxième perl avec threads

4 réponses
Avatar
Delf
Bonjour.

J'ai SME Server (basé sur Red Hat 7.3) avec Perl 5.6.1 sans le support
des threads. J'ai pris les sources de Perl 5.8.4 sur CPAN, j'ai compilé
avec le support thread.

En passant

...
Can't locate auto/POSIX/autosplit.ix in @INC
...
[extras.make] Erreur 1 (ignorée)
[root@server perl-5.8.4]#

Normal ?

Puis le make test me donne:

ext/Storable/t/threads...............skipping test on this platform

Normal ?
Pour savoir si le support des threads fonctionne bien, le mieux serait
d'essayer un p'tit exemple :) Mais... voilà, comment installer cette
version *sans* interférer sur la version 5.6.1 qui est actuellement sur
mon OS ? Autrement dit, sans faire de mise à jour. Je sais que c'est
possible, je ne sais pas faire. Et j'ai rien trouvé sur le Net encore :|
Merci pour les indices.

--
Delf
www.snoworld.org

4 réponses

Avatar
DominiX
ici même:40cc6674$0$31936$,
Delf a écrit
Bonjour.
...

Mais... voilà, comment installer cette
version *sans* interférer sur la version 5.6.1 qui est actuellement
sur mon OS ? Autrement dit, sans faire de mise à jour. Je sais que
c'est possible, je ne sais pas faire. Et j'ai rien trouvé sur le Net
encore :| Merci pour les indices.


au moment du configure il faut donner une directory d'installation
diferrente, par exemple /opt/bin/perl ou /usr/local/bin/perl qui est
IIRC l'emplacement par default, et qui conviendra si ton perl 5.6.1
est dans /usr/bin ( linké dans /usr/lib/perl5)

-- dominix

Avatar
Delf
DominiX wrote:

au moment du configure il faut donner une directory d'installation
diferrente


Ok merci. J'avais utilisé le parametre -de donc... loupé :)

--
Delf
www.snoworld.org

Avatar
Paul GABORIT
À (at) Sun, 13 Jun 2004 10:12:11 -1000,
"DominiX" écrivait (wrote):
ici même:40cc6674$0$31936$,
Delf a écrit
Bonjour.
...

Mais... voilà, comment installer cette
version *sans* interférer sur la version 5.6.1 qui est actuellement
sur mon OS ? Autrement dit, sans faire de mise à jour. Je sais que
c'est possible, je ne sais pas faire. Et j'ai rien trouvé sur le Net
encore :| Merci pour les indices.


au moment du configure il faut donner une directory d'installation
diferrente, par exemple /opt/bin/perl ou /usr/local/bin/perl qui est
IIRC l'emplacement par default, et qui conviendra si ton perl 5.6.1
est dans /usr/bin ( linké dans /usr/lib/perl5)


On peut aussi le configurer et le compiler normalement puis l'installer par:

make install PERLNAME=newperl

Normalement, si l'installation du perl 5.6.1 de l'OS est bien faite, la
nouvelle installation n'interfère pas. Sauf les scripts comme 'find2perl' ou
'perldoc' qui sont mis à jour et qui peuvent poser problème.

L'intérêt de faire comme cela est de pouvoir basculer de l'ancienne version à
la nouvelle d'un seul coup en remplaçant perl (qui est un lien vers perl5.6.1)
par perl (qui sera un lien vers perl5.8.4).

--
Paul Gaborit - <http://www.enstimac.fr/~gaborit/>
Perl en français - <http://www.enstimac.fr/Perl/>


Avatar
Alain BARBET
Salut,

Je ne suis pas adepte d'installer un perl dans /usr/local ou /opt,
parce que ....

+ tant que /usr/bin/perl existe, tu n'auras pas le meme perl si tu fais
./script.pl et perl script.pl en fonction de ton PATH.

+ De plus, les linux ont la sale habitude d'utiliser .pm maisons dans
leur distrib perl qu'ils vont utiliser pour administrer le systeme dps
l'interface graphique. Du coup, si tu remplaces /usr/bin/perl, tu vas
avoir certaines parties de ton interface graphique qui ne fonctionnent
plus ...

+ Je ne parle meme pas des script lances par crontab et qui ne lisent
pas ton .profile ....

+ si je veux utiliser automake dans /usr/local/bin et perl de /usr/bin
je fais comment ?

Bref la meilleure solution que j'ai trouve est d'installer perl dans un
repertoire qui lui est propre:

./Configure -Dprefix=/usr/local/perl-5.8.4

L'avantage de ce syteme est d'avoir tout un repertoire qu'on peut mettre
avec ses droits utilisateurs et eviter les sudo make install au moment
de perl -MCPAN install & co.

Ensuite modifier son .profile, /etc/profile ou /etc/bashrc au besoin,
sans oublier la variable PATH dans le fichier crontab.

HTH,
--
Alain BARBET