189 votes

Quelle est la différence entre := et = dans Makefile ?

Pour l’affectation de variables dans Make, je vois := et = opérateur. Quelle est la différence entre eux?

121voto

Greg Hewgill Points 356191

Ceci est décrit dans la documentation GNU Make, dans la section intitulée 6.2 Les deux saveurs des variables .

En bref, les variables définies avec sont développées une fois, mais les variables définies avec sont développées chaque fois qu’elles sont utilisées.

55voto

Edgard Leal Points 519

Pour moi, la meilleure façon de le voir dans la pratique est pendant cet extrait de Makefile:

Affectation simple

Course

Produira :

( Même valeur )

Affectation élargie

Course

Produira :

Différentes valeurs

12voto

Oli Charlesworth Points 148744

À partir de http://www.gnu.org/software/make/manual/make.html#Flavors :

définit une variable développée de manière récursive. définit une variable simplement développée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X