Comment puis-je faire GNU Faire utiliser un compilateur différent sans éditer manuellement le makefile?
Vous devriez pouvoir faire quelque chose comme ceci:
make CC=my_compiler
Cela suppose que celui qui a écrit le Makefile a utilisé la variable CC.
Vous pouvez définir les variables d'environnement CC
et CXX
, qui sont utilisées pour compiler les fichiers C et C++ respectivement. Par défaut, ils utilisent les valeurs cc
et g++
Si le makefile est écrit comme la plupart des makefiles, alors il utilise $(CC)
lorsqu'il souhaite invoquer le compilateur C. C'est ce que font les règles intégrées, de toute façon. Si vous spécifiez une valeur différente pour cette variable, Make l'utilisera à la place. Vous pouvez fournir une nouvelle valeur sur la ligne de commande:
make CC =/usr/bin/special-cc
Vous pouvez également spécifier que lorsque vous exécutez configure
:
./ configurez CC =/usr/bin/special-cc
Le script de configuration incorporera la nouvelle valeur CC
dans le makefile qu'il génère, vous n'avez donc pas besoin de manuellement le modifier, et vous pouvez simplement exécuter make
par lui-même par la suite (au lieu de donner à chaque fois la valeur personnalisée CC
sur la ligne de commande).
De nombreux makefiles utilisent 'CC' pour définir le compilateur. Si tel est le cas, vous pouvez remplacer cette variable avec
make CC='/usr/bin/gcc'
Utilisez des variables pour le nom du programme du compilateur.
Passez la nouvelle définition à l'utilitaire make
ou définissez-la dans l'environnement avant de la créer.