Je n'arrive pas à faire quelque chose d'incroyablement classique : 2 scripts
qui utilisent la même librairie.
Extrait du script 1 : use lib "/repertoire"; use MaLib;
Extrait du script 2 : use lib "/repertoire"; use MaLib;
Supposons que je file mes 2 scripts et ma librairie à un utilisateur. Le but du
jeu est qu'il arrive à faire marcher les 2 scripts.
Voici les règles du jeu :
Règle 1 : L'utilisateur à qui j'ai donné les fichiers ne connait rien à perl.
Il est interdit de lui dire de regarder le code ou de modifier les lignes qu'il
y a dedans. Par contre, il est capable d'éditer des fichiers de configuration,
ou faire des manipulations d'installation...
Règle 2 : L'utilisateur va mettre les fichiers où il veut, et pas à un endroit
qu'on aura décidé.
Etant donné ces règles, on peut déjà dire que mes scripts ne fonctionneront
pas, puisqu'ils chercheront MaLib dans "/repertoire", alors que l'utilisateur
va fourrer la lib n'importe où...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Papo
regarde FindBin
use FindBin; use lib "$FindBin::Bin/../lib"; ouuse FindBin qw($Bin); use lib "$Bin/../lib";Pascal
"Edwin Vancleef" a écrit dans le message de news:
Je n'arrive pas à faire quelque chose d'incroyablement classique : 2 scripts qui utilisent la même librairie.
Extrait du script 1 : use lib "/repertoire"; use MaLib; Extrait du script 2 : use lib "/repertoire"; use MaLib;
Supposons que je file mes 2 scripts et ma librairie à un utilisateur. Le but du jeu est qu'il arrive à faire marcher les 2 scripts.
Voici les règles du jeu :
Règle 1 : L'utilisateur à qui j'ai donné les fichiers ne connait rien à perl. Il est interdit de lui dire de regarder le code ou de modifier les lignes qu'il y a dedans. Par contre, il est capable d'éditer des fichiers de configuration, ou faire des manipulations d'installation...
Règle 2 : L'utilisateur va mettre les fichiers où il veut, et pas à un endroit qu'on aura décidé.
Etant donné ces règles, on peut déjà dire que mes scripts ne fonctionneront pas, puisqu'ils chercheront MaLib dans "/repertoire", alors que l'utilisateur va fourrer la lib n'importe où...
regarde FindBin
use FindBin;
use lib "$FindBin::Bin/../lib";
ouuse FindBin qw($Bin);
use lib "$Bin/../lib";Pascal
"Edwin Vancleef" <e.vancleef@nospam.invalid> a écrit dans le message de
news: slrnel95lc.1mv4.e.vancleef@cayenne.nfrance.com...
Je n'arrive pas à faire quelque chose d'incroyablement classique : 2
scripts
qui utilisent la même librairie.
Extrait du script 1 : use lib "/repertoire"; use MaLib;
Extrait du script 2 : use lib "/repertoire"; use MaLib;
Supposons que je file mes 2 scripts et ma librairie à un utilisateur. Le
but du
jeu est qu'il arrive à faire marcher les 2 scripts.
Voici les règles du jeu :
Règle 1 : L'utilisateur à qui j'ai donné les fichiers ne connait rien à
perl.
Il est interdit de lui dire de regarder le code ou de modifier les lignes
qu'il
y a dedans. Par contre, il est capable d'éditer des fichiers de
configuration,
ou faire des manipulations d'installation...
Règle 2 : L'utilisateur va mettre les fichiers où il veut, et pas à un
endroit
qu'on aura décidé.
Etant donné ces règles, on peut déjà dire que mes scripts ne
fonctionneront
pas, puisqu'ils chercheront MaLib dans "/repertoire", alors que
l'utilisateur
va fourrer la lib n'importe où...
use FindBin; use lib "$FindBin::Bin/../lib"; ouuse FindBin qw($Bin); use lib "$Bin/../lib";Pascal
"Edwin Vancleef" a écrit dans le message de news:
Je n'arrive pas à faire quelque chose d'incroyablement classique : 2 scripts qui utilisent la même librairie.
Extrait du script 1 : use lib "/repertoire"; use MaLib; Extrait du script 2 : use lib "/repertoire"; use MaLib;
Supposons que je file mes 2 scripts et ma librairie à un utilisateur. Le but du jeu est qu'il arrive à faire marcher les 2 scripts.
Voici les règles du jeu :
Règle 1 : L'utilisateur à qui j'ai donné les fichiers ne connait rien à perl. Il est interdit de lui dire de regarder le code ou de modifier les lignes qu'il y a dedans. Par contre, il est capable d'éditer des fichiers de configuration, ou faire des manipulations d'installation...
Règle 2 : L'utilisateur va mettre les fichiers où il veut, et pas à un endroit qu'on aura décidé.
Etant donné ces règles, on peut déjà dire que mes scripts ne fonctionneront pas, puisqu'ils chercheront MaLib dans "/repertoire", alors que l'utilisateur va fourrer la lib n'importe où...
Papo
désolé mon message précédent s'est formatté n'importe comment:
use FindBin; use lib "$FindBin::Bin/../lib";
ou alors
use FindBin qw($Bin); use lib "$Bin/../lib";
il suffit d'enlever le ../lib si tu laisses ta lib au même endroit que le .pl
Pascal
désolé mon message précédent s'est formatté n'importe comment:
use FindBin;
use lib "$FindBin::Bin/../lib";
ou alors
use FindBin qw($Bin);
use lib "$Bin/../lib";
il suffit d'enlever le ../lib si tu laisses ta lib au même endroit que le
.pl