Diferencia entre CPPFLAGS y CXXFLAGS en GNU Make
Pregunta
¿Cuál es la diferencia entre CPPFLAGS y CXXFLAGS en GNU Make?
Solución
CPPFLAGS
es para las banderas del C P re P rocessor; CXXFLAGS
es para banderas para el compilador de C ++.
Las reglas predeterminadas en make (en mi máquina, en cualquier caso) pasan CFLAGS
a casi todo, <=> solo se pasa al compilar y vincular C, y <=> solo se pasa al compilar y vincular C ++ .
Otros consejos
Por defecto, CPPFLAGS
se le dará al preprocesador de C, mientras que CXXFLAGS
se le dará al compilador de C ++.
El GNU Make Manual es un buen recurso para preguntas como esta (consulte < a href = "http://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html#Implicit-Variables" rel = "noreferrer"> Variables implícitas ).
CPPFLAGS son para el preprocesador de C, mientras que CXXFLAGS son para el compilador de C ++.
Ver aquí .
Por defecto, están configurados en algo.
En la práctica, necesita saber qué hace cada proyecto. Prácticamente nadie usa esos valores predeterminados integrados en make, y si confía en, por ejemplo, CPPFLAGS que significa & Quot; marca el preprocesador C & Quot; encontrará que el proyecto que le interesa lo ha usado para significar " marcas para el compilador de C ++ " en lugar. ¿Y el indicador CFLAGS se pasa a las líneas de compilación de C ++? A veces. No siempre. Etc, etc., etc.