Заставьте GNU использовать другой компилятор

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

46
задан Clark Gaebel 3 June 2010 в 19:44
поделиться

5 ответов

Вы должны уметь делать что-то вроде этого:

make CC=my_compiler

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

72
ответ дан 26 November 2019 в 20:11
поделиться

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

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

1
ответ дан 26 November 2019 в 20:11
поделиться

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

make CC=/usr/bin/special-cc

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

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

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

17
ответ дан 26 November 2019 в 20:11
поделиться

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

make CC='/usr/bin/gcc'
6
ответ дан 26 November 2019 в 20:11
поделиться

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

24
ответ дан 26 November 2019 в 20:11
поделиться