Как я могу заставить GNU Использовать другой компилятор, вручную не редактируя make-файл?
Вы должны уметь делать что-то вроде этого:
make CC=my_compiler
Предполагается, что тот, кто написал Makefile, использовал переменную CC.
Используйте переменные для имени программы компилятора.
Либо передайте новое определение утилите make
, либо установите их в среде перед сборкой.
Если make-файл написан как большинство make-файлов, то он использует $ (CC)
, когда хочет вызвать компилятор C. Во всяком случае, это то, что делают встроенные правила. Если вы укажете другое значение для этой переменной, Make будет использовать это вместо этого. Вы можете указать новое значение в командной строке:
make CC=/usr/bin/special-cc
Вы также можете указать, что при запуске configure
:
./configure CC=/usr/bin/special-cc
Сценарий конфигурации будет включать новое значение CC
в make-файл, который он генерирует, поэтому вам не нужно вручную редактировать его, и после этого вы можете просто запустить make
самостоятельно (вместо того, чтобы указывать пользовательский CC
значение в командной строке каждый раз).
Многие make-файлы используют «CC» для определения компилятора. Если у вас есть, вы можете переопределить эту переменную с помощью
make CC='/usr/bin/gcc'
Вы можете установить переменные среды CC
и CXX
, которые используются для компиляции файлов C и C ++ соответственно. По умолчанию они используют значения cc
и g ++