Pregunta

¿Cuál es la diferencia entre CPPFLAGS y CXXFLAGS en GNU Make?

¿Fue útil?

Solución

Se supone que

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top