Чтение онлайн

на главную

Жанры

C++. Сборник рецептов

Когсуэлл Джефф

Шрифт:

#include "george.hpp"

#include "ringo.hpp"

#include "georgeringo.hpp"

void georgeringo {

 george;

 ringo;

}

Заголовок georgeringo.hpp содержит несколько сложных директив препроцессора. Если вы их не понимаете, не страшно. Я объясню их в рецепте 1.4.

Наконец, исходный код исполняемого файла hellobeatles представлен в примере 1.3. Он состоит из единственного исходного файла hellobeatles.cpp,

который просто включает заголовки johnpaul.hpp и georgeringo.hpp и вызывает функцию
johnpaul
, а вслед за ней — функцию
georgeringo
.

Пример 1.3. Исходный код hellobeatles

hellobeatles/ hellobeatles.cpp

#include "johnpaul/johnpaul.hpp"

#include "georgeringo/georgeringo.hpp"

int main {

 // Печатает "John, Paul, George, and Ringo\n"

 johnpaul;

 georgeringo;

}

1.1. Получение и установка GCC

Проблема

Вы хотите получить GCC — свободно распространяемый компилятор GNU C/С++.

Решение

Решение зависит от вашей операционной системы.

Windows

Установите MinGW, Cygwin или оба.

Чтобы установить MinGW, посетите страницу MinGW по адресу www.mingw.org и проследуйте по ссылкам до страницы загрузки MinGW. Скачайте последнюю версию программы установки MinGW, которая должна иметь имя MinGW-<версия>.exe.

Далее запустите программу установки. Она попросит вас указать, куда вы хотите установить MinGW. Также она может спросить, какие пакеты вы хотите установить, - как минимум вы должны установить gcc-core, gcc-g++, binutils и среду выполнения MinGW, но можно установить и другие. По окончании установки вы сможете запустить из командной строки Windows gcc, g++, ar, ranlib, dlltool и некоторые другие инструменты GNU. Вам может потребоваться добавить директорию bin установки MinGW в переменную среды окружения

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

Чтобы установить Cygwin, посетите страницу Cygwin по адресу www.cygwin.com и для загрузки программы установки Cygwin проследуйте по ссылке Install Cygwin Now. Далее запустите программу установки. Она попросит вас выбрать несколько опций, таких как путь, куда следует устанавливать Cygwin.

Я подробно описываю процесс установки Cygwin, потому что он может оказаться несколько запутанным, в зависимости от того, что вы хотите установить. К тому моменту, как вы будете читать эту книгу, этот процесс может измениться, и, если это произойдет, он, возможно, станет проще.

Наиболее важным выбором является выбор пакетов. Если у вас достаточно места на диске и высокоскоростное соединение с Интернетом, я рекомендую устанавливать все пакеты. Чтобы сделать это, щелкните на слове Default (По умолчанию) рядом со словом All (Все) в верхней части

иерархии пакетов. После паузы (возможно, продолжительной) слово Default должно измениться на Install (Установить).

Если места на диске недостаточно или у вас медленное соединение с Интернетом, можете выбрать меньшее количество пакетов. Чтобы выбрать только инструменты разработки, щелкните на слове Default рядом со словом Devel. После паузы (возможно, продолжительной) слово Default должно измениться на Install. Для выбора еще меньшего набора пакетов раскройте список пакетов для разработки, щелкнув на пиктограмме + рядом со словом Devel. Выберите пакеты gcc-core, gcc-g++ и make, щелкнув на слове Skip (Пропустить) напротив каждого из этих пакетов, в результате чего это слово сменится на Install.

По окончании выбора пакетов нажмите на Finish (Готово). Когда программа установки завершит работу, директория установки Cygwin должна содержать файл cygwin.bat. Запуск этого сценария приведет к отображению оболочки Cygwin — среды с командной строкой, из которой можно запускать gcc, g++, ar, ranlib, dlltool, make и любые другие установленные вами утилиты. Процесс установки добавляет поддиректорию bin установки Cygwin в переменную среды окружения

PATH
, так что запускать эти утилиты можно также и из оболочки Windows cmd.exe. Однако вы увидите, что оболочка Cygwin — порт оболочки bash — гораздо удобнее для запуска утилит GNU.

Unix

Введя в командной строке

g++ -v
, проверьте, установлен ли в вашей системе GCC. Если GCC установлен и если доступна поддержка языка С++, эта команда должна напечатать сообщение, похожее на следующее.

Using built-in specs.

Target: powerpc-apple-darwin8

Configured with /private/var/tmp/gcc/gcc-5026.obj~19/src/configure

– -disable-checking --prefix=/usr ...

Если GCC не установлен или если он установлен без поддержки С++, вы должны самостоятельно установить его. Обычно это сложный процесс, который зависит от вашей платформы. Среди прочего вам потребуется установить пакеты GNU make и GNU binutils. Подробные инструкции доступны по адресу gcc.gnu.org/install.

Если вы используете Mac OS X, то простейшим способом получения GCC является скачивание с Web-сайта Apple среды разработки Xcode и следование простым инструкциям ее установки. В настоящий момент Xcode доступен по адресу developer.apple.com/tools.

Если вы используете Linux, то какая-то версия GCC уже должна быть установлена. Чтобы проверить номер версии, введите

g++ -v
. Текущая версия GCC — это 4.0.0. Если ваша версия сильно устарела, используйте систему управления пакетами, применяемую в вашем дистрибутиве Linux, и установите наиболее новую.

Обсуждение

Cygwin и MinGW представляют очень разные подходы к портированию инструментов GNU в Windows. Cygwin — это амбициозный проект, стремящийся воспроизвести Unix-подобную среду, работающую под Windows. Он предоставляет уровень совместимости с Unix, что позволяет компилировать и выполнять под Windows программы, написанные для Unix. Следовательно, для Cygwin доступно огромное количество утилит Unix. Даже если вы не разрабатываете для Unix, вы, возможно, скоро станете считать, что вам необходимы инструменты Cygwin.

Поделиться:
Популярные книги

Треск штанов

Ланцов Михаил Алексеевич
6. Сын Петра
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Треск штанов

Низший - Инфериор. Компиляция. Книги 1-19

Михайлов Дем Алексеевич
Фантастика 2023. Компиляция
Фантастика:
боевая фантастика
5.00
рейтинг книги
Низший - Инфериор. Компиляция. Книги 1-19

Купеческая дочь замуж не желает

Шах Ольга
Фантастика:
фэнтези
6.89
рейтинг книги
Купеческая дочь замуж не желает

Враг из прошлого тысячелетия

Еслер Андрей
4. Соприкосновение миров
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Враг из прошлого тысячелетия

Фиктивная жена

Шагаева Наталья
1. Братья Вертинские
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Фиктивная жена

Темный Охотник

Розальев Андрей
1. КО: Темный охотник
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Охотник

Мастер Разума III

Кронос Александр
3. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.25
рейтинг книги
Мастер Разума III

Отборная бабушка

Мягкова Нинель
Фантастика:
фэнтези
юмористическая фантастика
7.74
рейтинг книги
Отборная бабушка

Кодекс Охотника. Книга X

Винокуров Юрий
10. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
6.25
рейтинг книги
Кодекс Охотника. Книга X

Сумеречный Стрелок 2

Карелин Сергей Витальевич
2. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 2

Купидон с топором

Юнина Наталья
Любовные романы:
современные любовные романы
7.67
рейтинг книги
Купидон с топором

Отмороженный 4.0

Гарцевич Евгений Александрович
4. Отмороженный
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Отмороженный 4.0

Черный Маг Императора 5

Герда Александр
5. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 5

На границе тучи ходят хмуро...

Кулаков Алексей Иванович
1. Александр Агренев
Фантастика:
альтернативная история
9.28
рейтинг книги
На границе тучи ходят хмуро...