[Perl] CPAN et vielles dentelles.

Olivier Mengué olivier.mengue at gmail.com
Ven 4 Mar 14:25:41 CET 2016


Le 2 mars 2016 à 03:01, Dominique <d.minix at gmail.com> a écrit :

>
> Bonjour a tous
>
> j'ai un truc pas ordinaire a faire, on se traine dans notre boite un
> applicatif heureusement ré-écrit  qui tournait jadis sous QNX 4
> j'ai donc plein d'instance ce cet OS encore dans la nature. j'ai besoin de
> faire un truc qui permettra la transition vers un la modernité "java/mysql
> touça"
>

Java, c'est déjà has-been. La modernité, c'est Go. Et Perl.

Mais l'environnment dans lequel tournera le code "moderne", ça va rester
QNX ?


> mais il me faudrait coder quelques rustine. notamment pour nous aider a
> migrer.
>
> mais voila, sniff
>
> # perl -v
>
> This is perl, v5.8.1 built for x86-qnx
>
> Copyright 1987-2003, Larry Wall
>
> je n'ai pratiquement rien de CPAN qui s'installe... trop vieux mon système.
>

Dis nous de quels modules tu aurais besoin. On pourra peut-être d'indiquer
si tu as des chances d'arriver à une solution...

Ensuite, les développeurs de modules ne peuvent pas être au courant des
problèmes que tu rencontres si tu ne les signales pas.
Un moyen pas trop contraignant pour toi (à condition que la publication
d'informations sur ton système sur le web n'est pas problématique) est
d'installer un client CPAN Testers dans ton client CPAN. Voici le mode
d'emploi http://wiki.cpantesters.org/wiki/QuickStart Grâce à cela, à chaque
tentative d'installation (réussie ou en échec) un rapport sera publié et
l'auteur du module pourra le consulter.
Il n'y a aucun rapports venant de machines QNX actuellement.



> QUESTION : a votre connaissance existe t'il un site ou on peux retrouver
> l’état du CPAN a une date précise (et ancienne)
>

Backpan.org contient toutes les archives publiées sur le CPAN.

Pour avoir un état du CPAN à une date précise, il te faut une copie de
l'index à cette date là. L'index se trouve dans le fichier
02packages.details.txt.gz.
Je ne crois pas qu'il y ait d'archive publique de ce fichier. Mais Andreas
Koening (andk at cpan.org) doit sûrement en avoir une (si tu lui demandes, tu
peux lui dire que tu viens de ma part et mets moi en copie).

Une fois que tu as cela, la commande suivante pourrait peut-être te
permettre d'installer les modules :
     cpanm --mirror http://backpan.org/ --mirror-index
./02packages.details.txt.gz

Si tu persistes dans ce projet et que ça ne marche pas, je te recommande de
reposer ta question sur la liste cpan-workers at perl.org
http://lists.perl.org/list/cpan-workers.html

si j'avais un CPAN de disons 2003 ou au pire 2005 je pense que pas mal de
> chose passerais.
> En plus, bonjour QNX. c'est posix, j'ai pas les outils de dev qui vont
> bien. je suis dans l'artisanat total, mais je pense que même en pure-perl
> je peux piocher pas mal de chose pour m'aider dans le CPAN.
> j'ai bien trouvé backpan.perl.org mais je sais pas trop comment prendre
> au max les version ante-2005
> merci de vos lumières.
>


Il y a toutefois une autre solution, bien plus simple, si tu arrives à
mieux identifier les modules dont tu as besoin et que ceux-ci sont en
pur-Perl : il s'agit d'utiliser App::FatPacker pour construire sur ton
environnement de développement Perl moderne un paquet complet qui
embarquera ton script et tous les modules pur-Perl qui manquent sur
l'environnement cible. Grâce à cela tu n'a plus qu'un seul fichier à
déployer sur le système cible, et donc plus besoin de client CPAN et de
toute la toolchain CPAN sur QNX.
C'est l'approche qu'utilise cpanm.
C'est aussi l'approche que j'ai choisie pour le maximum de portabilité pour
mes deux projets personnels github-keygen [1] et angel-PS1 [3]. Tu peux
voir mes scripts d'assemblage sur [2] et [4].

[1] https://github.com/dolmen/github-keygen/
[2] https://github.com/dolmen/github-keygen/blob/devel/release.pl
[3] https://github.com/dolmen/angel-PS1/
[4] https://github.com/dolmen/angel-PS1/blob/devel/dist


Olivier.
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://listes.mongueurs.net/mailman/private/perl/attachments/20160304/2172af32/attachment-0001.html>


Plus d'informations sur la liste de diffusion Perl