Variables du Makefile non vues

Résolu/Fermé
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007 - 4 sept. 2007 à 09:20
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007 - 4 sept. 2007 à 17:56
Bonjour,

J'ai un petit problème avec les variables exportés dans le Makefile. Un script appelé par le makefile ne les voit pas. J'ai fait des echos dans le script pour voir leur valeur mais il y a rien.
Quelqu'un save pourquois?
Merci si quelqu'un peut m'aider.

avico

6 réponses

dubcek Messages postés 18728 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 29 mai 2024 5 615
4 sept. 2007 à 10:27
hello
les variables dans Makefile sont locales à la commande make et pas vues par le shell.
Soit passer les variables en paramètres du script, ou définir les variables dans l'environnement du shell et utiliser l'option:
-e,--environment-overrides
Give variables taken from the environment precedence over variables from makefiles.
0
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007
4 sept. 2007 à 11:04
merci pour repondre!
mais j'ai essaie ce que tu m'as dit (-e, --environement-overrides) et enocre il continue a ne les voir pas.

qu'est que tu veux dire par passer les variables en paramètres du script?
temporalement j'ai redefini les variables au début du script, mais ça n'est pas une solution souhaitable pour moi...
0
dubcek Messages postés 18728 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 29 mai 2024 5 615
4 sept. 2007 à 12:33
il faut que dans le shell, les variables soient export var=valeur
par contre les variables du shell sont vues dans Makefile

dans une Makefile
    
              CPP = /usr/ccs/lib/cpp
               LD = ld

target:
               script $(CPP) $(LD)


et dans script, $1 = CPP, $2 = LD
0
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007
4 sept. 2007 à 14:56
je crois que le problème est plutôt un problème linux.

les variables sont bien définis et exportés dans le make et elle sont bien utilisés dans le script $VARIABLE

c'est le makefile d'un code opensource que j'ai télechargé du site oficiel de netgear.
j'utilise une distribution debian pour amd64 je ne suis pas sure si le probleme vient de la bas.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007
4 sept. 2007 à 17:55
j'ai resolu le problème c'etait parce l'appel au script se faisait a paritr d'un command sudo su.
apparentment il ne retient pas les valeurs des variables.
0
avico83 Messages postés 8 Date d'inscription mardi 21 août 2007 Statut Membre Dernière intervention 5 septembre 2007
4 sept. 2007 à 17:56
problem resolu
0