Разница между CPPFLAGS и CXXFLAGS в GNU Make
в чем разница между CPPFLAGS и CXXFLAGS в GNU Make?
4 ответов
CPPFLAGS должен быть для флагов для C PreProcessor; CXXFLAGS для флагов для компилятора C++.
правила по умолчанию в make (на моей машине, во всяком случае) проходят CPPFLAGS почти все, CFLAGS передается только при компиляции и компоновки C и CXXFLAGS передается только при компиляции и связывания в C++.
по умолчанию CPPFLAGS будет передано препроцессору C, в то время как CXXFLAGS будет передан компилятору c++.
на GNU сделать руководство является хорошим ресурсом для таких вопросов (см. Неявные Переменные).
CPPFLAGS предназначены для препроцессора C, а CXXFLAGS-для компилятора C++.
посмотреть здесь.
по умолчанию, они настроены на что-то.
на практике вам нужно знать, что делает каждый проект. Практически никто не использует эти значения по умолчанию, встроенные в make, и если вы полагаетесь, например, на CPPFLAGS, означающие "флаги для препроцессора C", вы обнаружите, что проект, о котором вы заботитесь, использовал его вместо "флаги для компилятора C++". И передается ли флаг CFLAGS в строки компиляции C++? Иногда. Не всегда. И т. д. и т. п. и т. д.