Pergunta

Qual é a diferença entre CPPFLAGS e CXXFLAGS no GNU make?

Foi útil?

Solução

CPPFLAGS é suposto ser para bandeiras para o C P re P rocessor; 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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top