Сделать GNU сделать использовать другой компилятор - PullRequest
43 голосов
/ 03 июня 2010

Как я могу заставить GNU Make использовать другой компилятор без ручного редактирования make-файла?

Ответы [ 5 ]

70 голосов
/ 03 июня 2010

Вы должны быть в состоянии сделать что-то вроде этого:

make CC=my_compiler

Это предполагает, что тот, кто написал Makefile, использовал переменную CC.

24 голосов
/ 03 июня 2010

Вы можете установить переменные окружения CC и CXX, которые используются для компиляции файлов C и C ++ соответственно. По умолчанию они используют значения cc и g++

18 голосов
/ 03 июня 2010

Если make-файл написан, как большинство make-файлов, то он использует $(CC), когда хочет вызвать компилятор Си. Это то, что делают встроенные правила, так или иначе. Если вы укажете другое значение для этой переменной, то Make будет использовать его вместо этого. Вы можете указать новое значение в командной строке:

make CC=/usr/bin/special-cc

Вы также можете указать, что при запуске configure:

./configure CC=/usr/bin/special-cc

Сценарий конфигурации будет включать новое значение CC в создаваемый им make-файл, поэтому вам не нужно вручную редактировать его, и вы можете просто запустить make самостоятельно после этого вместо того, чтобы каждый раз вводить пользовательское значение CC в командной строке).

6 голосов
/ 03 июня 2010

Многие make-файлы используют 'CC' для определения компилятора. Если ваш, вы можете переопределить эту переменную с помощью

make CC='/usr/bin/gcc'
1 голос
/ 03 июня 2010

Использовать переменные для имени программы компилятора.
Либо передайте новое определение в утилиту make, либо установите его в среде перед сборкой.

См. Использование переменных в Make

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...