Вызов GCC как "cc" против "gcc" - PullRequest
67 голосов
/ 02 июня 2009

Мне известно, что в большинстве систем GNU / Linux GCC может вызываться именем "cc" из командной строки (в отличие от "gcc"). Есть ли какая-либо разница в поведении GCC, когда он вызывается так или иначе?

Например, я знаю, что при вызове GCC через имя "g ++" вместо "gcc" GCC ведет себя по-разному (он рассматривает файлы .c как источник C ++ и ссылки в стандартной библиотеке C ++). Есть ли похожая разница в поведении между "gcc" и "cc"?

РЕДАКТИРОВАТЬ: Ни один из полученных ответов пока что не дал окончательного"да" или "нет" относительно того, будет ли GCC вести себя по-разному, если вызывается так или иначе. Однако идея погрузиться в источник, чтобы проверить его поведение, привела меня на этот путь. Основываясь на том, что я нашел там, я теперь считаю, что ответ:

Нет. GCC ведет себя одинаково независимо от того, вызывается ли он через "gcc" или "cc" .

Ответы [ 11 ]

1 голос
/ 02 июня 2009

Учитывая, что это происходит из UNIX, я бы сказал, что "cc" - это общее имя, а "gcc" - фактический компилятор. то есть "gcc" предоставляет "cc", так что программа, ищущая "cc", найдет и использует "cc", к счастью, игнорируя фактический используемый компилятор.

Кроме того, программы UNIX должны не знать фактическое имя, используемое для их вызова (подумайте о ярлыках Windows Desktop - не имеет смысла проверять, как был вызван ярлык), так что нет, «gcc» и «cc» "сделать то же самое, если" cc "является ссылкой на" gcc ".

Если, конечно, "cc" не является символической ссылкой, а шеллскриптом, вызывающим gcc.

...