Bonjour,
j’ai un programme perl qui utilise un autre programme qui ne marche que si j’écris en shell les commandes suivantes :
csh
setenv LD_LIBRARY_PATH "."
bash
export LD_LIBRARY_PATH
je veux que ces lignes soient directement exécutés par le programme perl,
si je fais deux scripts sh un en csh et un en bash
puis je fais
system("./csh.sh");
system("./bash.sh");
le programme s’arrête après le premier system…
Comment dois je faire?
ya t-il un moyen pour résoudre ce problème? ou de remplacer en bash la commande setenv?
Merci
stonfi
Février 20, 2016, 12:44
2
slt,
Pkoi ne pas faire directement sous Perl ?
my LD_LIBRARY_PATH="."
...
Sinon je crois que pour le csh la déclaration de variable ressemble a ca :
setenv LD_LIBRARY_PATH . ( LD_LIBRARY_PATH="."環境変数 となる)
printenv LD_LIBRARY_PATH
.
Et pour le bash c’est comme tu as fait mais avec un PATH :
export LD_LIBRARY_PATH="/lib:.:"
echo $LD_LIBRARY_PATH
/lib:.
je n’ai pas compris comment faire directement sous perl…
est ce que c’est possible?
en fait, en ajoutant
my LD_LIBRARY_PATH="."
j’ai un message d’erreur :
syntax error at programme.pl line 16, near “my LD_LIBRARY_PATH=”,
stonfi
Février 20, 2016, 12:45
4
slt,
unter#cat test.pl
#!/usr/bin/perl -wT
my $LD_LIBRARY_PATH='.';
print $LD_LIBRARY_PATH,"\n";
unter#chmod +x test.pl ;./test.pl
.
unter#
désolée, mais ça ne marche toujours pas,
est ce que je dois inclure un package de plus par exemple?
stonfi
Février 20, 2016, 12:45
6
slt,
colle ton code ici et les messages d’erreurs.