Страницы

Поиск по вопросам

воскресенье, 7 апреля 2019 г.

Почему IDE требует С++ компилятор для С кода?

Code::Blocks 8.02 Ubuntu 10.04 LTS (x86_64) Пишу Сишный код. Компилятор ругается, что нет g++, и просит установить. Установил. Заработало. Теперь вопрос, в чем отличие скомпилированного кода Си в gcc от кода Си в g++?


Ответ

Почему IDE требует С++ компилятор для С кода?
Все очень просто. В качестве линкера (компоновщика связей) используется g++:
gcc -Wall -O2 -c /home/gaal/TEST/TEST/main.c -o obj/Release/main.o g++ -o bin/Release/TEST obj/Release/main.o -s
Теперь вопрос, в чем отличие скомпилированного кода Си в gcc от кода Си в g++?
См. комментарии к предыдущему ответу. Если компилятор — gcc, а линкер — g++, то просто будут добавлены зависимости от библиотек C++. Если компилятор и линкер — g++ с ключами для C-кода, то опять же будут определенные библиотеки. Но по идее код будет «Сишным».

Комментариев нет:

Отправить комментарий