43 votes

Impossible d'attribuer la variable à l'intérieur de la recette

Comment faire pour que ça marche ? Erreur avec "make : somevariable : Commande introuvable"

sometarget:
    somevariable = somevalue

Exemple complet :

CXXFLAGS = -I/usr/include/test -shared -fPIC

OBJ = main.o Server.o

blabla : $(OBJ) 
ifeq ($(argsexec),true) 
    # Creates an executable
    CXXFLAGS = -I/usr/include/test
    $(CXX) -o blabla $(OBJ) $(CXXFLAGS) 
else 
    # Creates a library
    DESTDIR = /home/pc
    $(CXX) -o blabla $(OBJ) $(CXXFLAGS) 
    ./bn.sh
endif

79voto

Blub Points 1929

J'ai trouvé une solution en utilisant la fonction eval :

$(eval variablename=whatever)

Cela fonctionne :)

(bien que je puisse maintenant essayer de trouver un système de construction plus facile ;))

Merci à tous pour la lecture et bien sûr @eriktous pour l'écriture !

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