Почему вы хотите это сделать?Насколько я знаю, единственное отличие состоит в том, что g++
дополнительно передает -lstdc++
компоновщику, чтобы связать стандартную библиотеку C ++.
Так что, если вы передадите эту опцию в GCC, он должен переслать ее компоновщику, и все должно быть в порядке.Но я действительно не вижу смысла в этом.Просто используйте g++
.
Тем не менее, я использовал gcc
в прошлом для компиляции кода C ++.Когда у меня была куча файлов, смешанных кодов C ++ и C, я просто компилировал все, используя gcc
, потому что g++
по умолчанию обрабатывает .c
как код C ++, что нарушает сборку, когда код C использует такие вещи, какnew
в качестве идентификаторов.Добавление -lstdc++
всегда работало хорошо.
См. Справочную страницу GCC
Компиляция программ C ++
Исходные файлы C ++ обычно используют один из суффиксов .C, .cc,.cpp, .CPP, .c ++, .cp или .cxx;Заголовочные файлы C ++ часто используют .hh, .hpp, .H или (для общего кода шаблона) .tcc;и предварительно обработанные файлы C ++ используют суффикс .ii.GCC распознает файлы с этими именами и компилирует их как программы на C ++, даже если вы вызываете компилятор так же, как и при компиляции программ на C (обычно с именем gcc).
Однако использование gcc не добавляетБиблиотека C ++.g ++ - это программа, которая вызывает GCC и обрабатывает файлы .c, .h и .i как исходные файлы C ++ вместо исходных файлов C, если не используется -x, и автоматически указывает связь с библиотекой C ++.Эта программа также полезна при предварительной компиляции заголовочного файла C с расширением .h для использования в компиляциях C ++.Во многих системах g ++ также устанавливается с именем c ++.
Когда вы компилируете программы на C ++, вы можете указать многие из параметров командной строки, которые вы используете для компиляции программ на любом языке;или параметры командной строки, значимые для C и родственных языков;или опции, которые имеют значение только для программ на C ++.