Variables invisibles

Résolu
avico83 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'ai un problème avec les variables du Makefile. Elles sont bien exportés, mais après pendant l'execution d'un script, le script ne les voit pas.
Quelqu'un save pourqouis?
Merci si quelqu'un peut m'aider ;-D

avico

3 réponses

mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Ben les variables du makefile sont locales aux makefile. Même avec un export tu ne peux pas les récupérer dans ton shell. Par contre tu peux récupérer tes variables shell dans ton makefile. En fait tu dois voir un makefile comme un script shell. En shell non plus tu ne peux pas récupérer les variables internes à ton script.
(mando@aldur) (~) $ cat truc.sh
#!/bin/bash
export PLOP1="plop_1"
export PLOP2="plop_2"
export PLOP3="plop-3"
echo $PLOP1 $PLOP2 $PLOP3
(mando@aldur) (~) $ env | grep PLOP
(mando@aldur) (~) $ ./truc.sh
plop_1 plop_2 plop-3
(mando@aldur) (~) $ env | grep PLOP
(mando@aldur) (~) $ export PLOP1="plop_1"
(mando@aldur) (~) $ export PLOP2="plop_2"
(mando@aldur) (~) $ export PLOP3="plop-3"
(mando@aldur) (~) $ echo $PLOP1 $PLOP2 $PLOP3
plop_1 plop_2 plop-3
(mando@aldur) (~) $ env | grep PLOP
PLOP3=plop-3
PLOP2=plop_2
PLOP1=plop_1

A noter que dans le cas du shell tu peux conserver tes variables avec la commandes shell source, pas utilisable dans un makefile.

Bonne chance
0
avico83 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour ta reponse,

je vien de resoudre mon problème.
C'etait à cuase du command sudo su que c'etait qui appelait au script dans le Makefile.
je ne comprends pas pourquois mais.. j'ai enlevé le sudo et maintenant ça marche
0
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
J'ai pas tout compris mais bon l'essentiel c'est que ça marche ;)
0