PB LCD avec Perl (Hires.pm)

Forum traitant de la distribution ClarkConnect. ClarkConnect est une distribution Linux destiné à transformer un simple PC en un routeur/firewall avec certaines fonctions de serveur internet (Web,Mail,FTP....).

Modérateur: modos Ixus

PB LCD avec Perl (Hires.pm)

Messagepar Sebastien65 » 18 Fév 2005 13:09

Salut,

Donc j'ai installé la version perl 5.8.3 sur CC 3 pour utiliser l'afficheur LCD (Frank78 avec le prog de Fesch)

Mais quand je le lance j'ai cette erreur :

[root@server root]# ./lcd
Can't locate loadable object for module Time::HiRes in @INC (@INC contains: /usr/lib/perl5/5.8.3/i386-linux-thread-multi /usr/lib/perl5/5.8.3 /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl .) at ./lcd line 18
Compilation failed in require at ./lcd line 18.
BEGIN failed--compilation aborted at ./lcd line 18.


Donc j'ai rajouté le fichier HiRes.pm d'une SME mais il me sort une erreur sur "gettimeofday" donc j'ai du désactiver les lignes suivantes pour pouvoir lancer le menu du lcd sans erreur :

use Time::HiRes qw(usleep gettimeofday);



#/\/\/\/\/\/\/\/\/\/\/\/\/\
#
# High Resolution Timer
# Procedure
#
# -> Do not touch this!
#
#\/\/\/\/\/\/\/\/\/\/\/\/\/

#sub set_wait()
#{
($seconds1, $microseconds1) = gettimeofday;
&checkButtons;
}

sub make_wait()
{
&checkButtons;
my $milli = shift;
($seconds2, $microseconds2) = gettimeofday;
my $i = $milli*1000-($seconds2*1000000+$microseconds2)+($seconds1*1000000+$microseconds1);
if($i<0) {$i=0;}
usleep($i);
}


Mais je n'arrive pas a le faire marcher :cry:

[root@server root]# ./lcd -init
Undefined subroutine &main::usleep called at ./lcd line 1645.
[root@server root]#


Une idée ?? :?:

Merci :wink:
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar Fesch » 18 Fév 2005 14:54

Afin que le script fonctionne de manière correcte, il faut absolument que le fichier HiRes.pm soit installé (et aussi au bon endroit).

Tu dis que tu l'a installé, or il me semble donc qu'il n'est pas installé correctement, sinon cela devrait marché. Pour l'installé il faut soit le copier manuellement au bon endroit (à voir, je ne connais plus par coeur) ou utiliser les commandes insternes à Perl (Perl Command Prompt) pour réaliser le téléchargement automatique depuis les erveurs Perl.

Si tu met en commentaire la ligne qui charge le dite librairie, il est clair que le programme ne connais plus la commande "usleep". Donc forcément il faut remettre la ligne qui inclus la librairie HiRes.pm :roll:
Pourquoi lis-tu ceci???
Avatar de l’utilisateur
Fesch
Amiral
Amiral
 
Messages: 2505
Inscrit le: 11 Sep 2003 00:00
Localisation: Luxembourg

Messagepar Sebastien65 » 18 Fév 2005 15:35

Salut,

Merci de ta réponse ;)

J'ai fait un copié/collé et je l'ai placé sur les chemins que me donné l'erreur... Mais toujours pareil !

Je vais voir avec les commandes de perl si j'arrive a rajouter le module :roll:
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar Sebastien65 » 18 Fév 2005 16:39

- re -

Bon pour Hires j'ai réussi a l'installer mais un autre problème que je n'arrive pas à résoudre :s

[root@server root]# ./lcd
Time::HiRes object version 1.55 does not match bootstrap parameter 01.20 at /usr/lib/perl5/5.8.3/i386-linux-thread-multi/DynaLoader.pm line 225.
Compilation failed in require at ./lcd line 18.
BEGIN failed--compilation aborted at ./lcd line 18.
[root@server root]#
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar Fesch » 18 Fév 2005 19:30

Alors peut-être que c'est la mauvaise version que tu as installée?

N'y a-t-il pas quelqu^'un d'autre qui a eut ce problème???
Pourquoi lis-tu ceci???
Avatar de l’utilisateur
Fesch
Amiral
Amiral
 
Messages: 2505
Inscrit le: 11 Sep 2003 00:00
Localisation: Luxembourg

Messagepar zeltron » 07 Août 2005 14:25

Si moi ! Sur une ClarkConnect il n'y a effectivement pas le timer Perl de precision (faut dire que c'est pas bien utile pour une distribution dédiée serveur !).

Tu télécharges le rpm perl-Time-HiRes-1.38-3.i386.rpm (recherche par google)
Tu le poses via un partage lan ou par le ftp tu tapes "rpm -ivh perl-Time-HiRes-1.38-3.i386.rpm"
et voilà tu peux lancer le script de Fesch !!!

Par contre je te conseille de le faire sur une installation fraîche de la ClarckConnect car tu as partiellement installé le package et tu auras des messages de conflit de versions qui te seront insurmontables.

J'ai utilisé ce rpm sur une ClarckConnect 3.0 (pas encore testé sur la 3.1) et cela fonctionne du 1er coup (je n'ai pas non plus testé les versions plus récentes du rpm perl-Time-HiRes).
Freebox V4 dégroupée ipcop 1.4.10 Red+orange+green+blue
zeltron
Premier-Maître
Premier-Maître
 
Messages: 56
Inscrit le: 08 Jan 2005 09:27

Messagepar zeltron » 08 Juin 2006 13:48

Bon cela marche aussi avec les dernières version de la ClarkConnect.

@+
Freebox V4 dégroupée ipcop 1.4.10 Red+orange+green+blue
zeltron
Premier-Maître
Premier-Maître
 
Messages: 56
Inscrit le: 08 Jan 2005 09:27


Retour vers ClarkConnect

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité