Diferença entre CPPFLAGS e CXXFLAGS no GNU make
Pergunta
Qual é a diferença entre CPPFLAGS e CXXFLAGS no GNU make?
Solução
CPPFLAGS
é suposto ser para bandeiras para o CXXFLAGS
é para bandeiras para o compilador C ++.
As regras padrão em make (na minha máquina, de qualquer modo) CPPFLAGS
passagem para quase tudo, CFLAGS
é passado somente quando compilar e ligar C, e CXXFLAGS
é passado somente quando compilar e ligar C ++.
Outras dicas
Por padrão, CPPFLAGS
será dado ao pré-processador C, enquanto CXXFLAGS
será dado ao compilador C ++.
O GNU Make manual é um bom recurso para perguntas como esta (veja < a href = "http://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html#Implicit-Variables" rel = "noreferrer"> variáveis ??implícitas ).
CPPFLAGS são para o pré-processador C, enquanto CXXFLAGS são para o compilador C ++.
Consulte aqui .
Por padrão, estão definidas para alguma coisa.
Na prática, você precisa saber o que cada projeto faz. Praticamente ninguém usa esses padrões embutidos marca, e se você contar com, por exemplo, CPPFLAGS que significa "bandeiras para o pré-processador C" Você verá que o projeto se preocupa com a tem usado para significar "bandeiras para o ++ compilador C" em vez de. E que a bandeira CFLAGS são passadas para as linhas de compilação C ++? As vezes. Nem sempre. Etc, etc, etc.