Форум программистов, компьютерный форум, киберфорум
Наши страницы
Кроссплатформенная разработка
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 705, средняя оценка - 4.96
RNT
Автор FAQ
3138 / 358 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
#1

GCC - компиляция C/C++ программ - Кроссплатформенная разработка

07.11.2009, 11:41. Просмотров 104049. Ответов 1
Метки нет (Все метки)

Обсуждение приветствуется , буду рад пожеланиям по улучшению данной статьи.
Статья в процессе написания, пожелания пишите сюда

ОГЛАВЛЕНИЕ

1. Предисловие
2. Руководство
2.1. Установка MinGW на Windows.
2.2. Прописывание пути к MinGW в Windows.
2.3. Компиляция в Windows`е
2.4. Литература по GCC
2.5. Уменьшение размера исполняемого файла.
1. Предисловие

В данной статье будет написано как пользоваться компилятором GCC и вспомогательными программами. Эта статья будет полезна для тех, кто только начал изучать С/С++, и не знает на чем и как компилировать свои первые программы, а также всем желающим научиться пользоваться этим компилятором.

2. Руководство

2.1. Установка MinGW на Windows.

Зайдите на страничку http://sourceforge.net/projects/mingw/files/ найдите там папку Automated MinGW Installer, найдите в ней инсталлятор посвежее, скачайте его. Затем запустите его. Щелкните Next => Download and install => Next => I Agree => Current => Next => Выберите MinGW base tools, g++, MinGW Make => Next => Выберите папку куда хотите установить MinGW => Next => Install. Ждите пока скачается и установится MinGW.


2.2. Прописывание пути к MinGW в Windows.

Прописывание путей необходимо для того, чтобы для запуска компилятора не приходилось каждый раз писать полный путь к нему. Зайдите в Панель инструментов => Система => Дополнительно => Переменные среды. К переменной Path, через знак "точка с запятой" добавьте путь к папке /MinGW/bin.

2.3. Компиляция в Windows`е

1) Откройте консоль Пуск=> Выполнить=> cmd.
2) Перейдите в папку с исходником командой cd путь_к_папке_с_исходником например:
Bash
1
cd C:\MyProgs
3) Если исходники вашей программы состоят из одного файла, то команда компиляции будет выглядеть так:
g++ исходный_файл
Например:
Bash
1
g++ main.cpp
В результате выполнения этой команды в папке с исходником окажется откомпилированная программа.
4) Если исходники вашей программы состоят из нескольких файлов, то можно написать их имена через пробел:
g++ первый_исходный_файл второй_исходный_файл
Например:
Bash
1
g++ main.cpp func.cpp
5) Если проект состоит из большого числа исходных файлов, то скомпилировать их всех можно командой:
Bash
1
g++ *.cpp
В данной папке все исходные файлы будут скомпилированы в одну программу.
6) Если вы не хотите каждый раз возится с консолью, можете создать *.bat файл и записать в него все необходимые команды. Делается это так: создаете текстовой документ, открываете его с блокнотом и записываете в него необходимые команды, примерно так:
Bash
1
2
g++ *.cpp
PAUSE
Команда PAUSE нужна для того, чтобы после компиляции консоль не закрывалась, чтобы можно было посмотреть результаты компиляции т.к. могут быть сообщения компилятора о синтаксических ошибках в исходнике. После того, как вы запишете необходимые команды в текстовой файл, надо сохранить файл и переименовать его в файл с расширением *.bat. Например make.bat. Этот файл make.bat нужно класть в папку с исходником, и для компиляции необходимо только запустить этот make.bat двойным щелчком.

2.4. Литература по GCC
Официальная документация
Артур Гриффитс "GCC. Полное руководство"

2.5. Уменьшение размера исполняемого файла.
Удаление отладочной информации позволяет уменьшить размер испольняемого файла. Команда выглядит так:
strip имя_исполняемого_файла
Например:
Bash
1
strip main.exe
54
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2009, 11:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос GCC - компиляция C/C++ программ (Кроссплатформенная разработка):

Компиляция Objective-C в GCC
Пытаюсь выполнить компияцию кода Objective-C с помощью GCC на Windows. Для...

Компиляция GCC в Windows
У меня в виндусе GCC для виндуса (портированный) Я хочю на нем (5,1)...

GCC:Компиляция в формат elf под Windows
Можно ли при помощи gcc создать в Windows исполняемый файл в формате elf? Если...

Компиляция проекта в gcc
Здравствуйте, форумчане! Прошу помочь разобраться! Есть программа,...

gcc ресурс
Есть возможность собрать исходник с ресурсом, то есть файлом например...

Вышел GCC 4.5.0
GNU и команда разработки GCC рады представить релиз GNU Compiler Collection...

1
castaway
Эксперт С++
4927 / 3034 / 453
Регистрация: 10.11.2010
Сообщений: 11,089
Записей в блоге: 10
Завершенные тесты: 1
19.01.2017, 22:32 #2
Некоторые поправки и добавления по пунктам:

2.1 В данный момент, самая актуальная версия MinGW находится в составе MSYS2. Краткая инструкция по установке и настройке находится на главной (той же) странице официального сайта.

2.5 Параметр -s (или --strip-all) позволяет максимально уменьшить размер исполняемого файла, удалив из него всю информацию о символах и релокации.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2017, 22:32
Привет! Вот еще темы с решениями:

портативный gcc
Кто-нибудь знает можно ли gcc запускать с флешки? Или как это можно сделать?...

Руководство на русском по GCC и g++
Подскажите по сабжу - надо разобраться с ключами, режимами и понять общую схему...

GCC требует библиотеки
компилирую программу с MINGW, а она для запуска требует библиотеки из папки...

Gcc без MinGW
Интересует вопрос, можно ли рабочий код (который без ошибок компилируется в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru