Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Gentoo_x86_Handbook.doc
Скачиваний:
25
Добавлен:
19.09.2019
Размер:
924.16 Кб
Скачать

5.C. Устанавливаем Portage

Распаковываем образ Portage

Теперь вам необходимо установить образ Portage, набор файлов, которые говорят Portage, какие программы вы можете установить, какие профили существуют, и так далее.

Скачивание и установка образа Portage

Перейдите к точке монтирования, куда вы смонтировали вашу файловую систему (скорее всего /mnt/gentoo):

Код 3.1: Переходим к точке монтирования Gentoo

# cd /mnt/gentoo

Запустите links (или lynx) и перейдите к списку зеркал Gentoo (http://www.gentoo.org/main/en/mirrors.xml?style=printable). Выберите зеркало, ближайшее к вам, и откройте каталог snapshots/. Там скачайте последний образ Portage (portage-latest.tar.bz2), выбрав его и нажав D.

Код 3.2: Смотрим на список зеркал Gentoo.

# links http://www.gentoo.org/main/en/mirrors.xml

Теперь выйдите из вашего браузера, нажав Q. Теперь у вас есть образ Portage, сохраненный в /mnt/gentoo.

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

Код 3.3: Проверка целостности образа Portage

# md5sum -c portage-latest.tar.bz2.md5sum

portage-latest.tar.bz2: OK

На следующем шаге мы распакуем образ Portage на вашу файловую систему. Удостоверьтесь, что вы используете точно такую же команду, последняя опция — большая C, не c.

Код 3.4: Распаковываем образ Portage

# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr

5.D. Настройка опций компиляции

Введение

Чтобы оптимизировать Gentoo, вы можете настроить несколько переменных, которые влияют на поведение Portage. Все эти переменные могут быть установлены как переменные окружения (используя команду export), но это будет не постоянно. Чтобы хранить ваши настройки, Portage дает вам файл /etc/make.conf, конфигурационный файл для Portage. Именно этот файл мы теперь будем редактировать.

Заметка: Прокомментированный список всех возможных переменных можно найти в /mnt/gentoo/usr/share/portage/config/make.conf.example. Для успешной установки Gentoo вам нужно установить только те переменные, о которых сказано ниже.

Запустите ваш любимый редактор (в данном обзоре мы используем nano), чтобы мы могли изменить переменные оптимизации, которые мы обсудим позже.

Код 4.1: Открываем /etc/make.conf

# nano -w /mnt/gentoo/etc/make.conf

Как вы наверное заметили,файл make.conf.example структурирован в общем виде: комментированные строки начинаются с «#», остальные строки определяют переменные, используя синтаксис ПЕРЕМЕННАЯ=«содержание». Файл make.conf использует такой же синтаксис. Некоторые из этих переменных обсуждаются ниже.

CFLAGS и CXXFLAGS

Переменные CFLAGS и CXXFLAGS определяют флаги оптимизации для gcc C и C++ компиляторов, соответственно. Хотя мы определяем их здесь, вы получите максимальную производительность только если оптимизируете эти флаги для каждой программы отдельно. Причина этого в том, что каждая программа различна.

В файле make.conf вы должны определить флаги оптимизации, которые, как вы считаете, сделают вашу систему наиболее отзывчивой «в общем». Не помещайте в данную переменную экспериментальные установки, слишком много оптимизации может заставить программы вести себя плохо (падать, или, еще хуже, неправильно работать).

Мы не будем объяснять все возможные опции оптимизации. Если вы хотите узнать их все, прочитайте документацию (http://gcc.gnu.org/onlinedocs/) или просмотрите info-страничку gcc (команда info gcc, но она работает только уже на установленной системе Linux). Сам файл make.conf.example тоже содержит много примеров и информации, не забудьте его тоже почитать.

Первая настройка это флаг -march= или -mtune=, который определяет название архитектуры. Возможные опции описаны в make.conf.example (как комментарии).

Второе — это флаг -O (это большая O, а не ноль), который определяет класс оптимизации gcc. Возможные классы это s (для оптимизации по размеру), 0 (никаких оптимизаций), 1, 2, или даже 3 для оптимизации на скорость (каждый класс оптимизирует так же, как предыдущий, плюс имеет некоторые дополнения). -O2 это рекомендованное значение по умолчанию, -O3бывает вызывает проблемы, когда используется на общесистемном уровне, поэтому мы рекомендуем вам остаться на -O2.

Другим популярным флагом оптимизации является -pipe (использовать пайпы вместо временных файлов для взаимодействия между различными этапами компиляции). Он не воздействует на генерируемый код, но использует больше памяти. На системах с малым объемом памяти, gcc может быть убит. В этом случае не используйте этот флаг.

Использование -fomit-frame-pointer (не заносить указатель фрейма стека в регистр для функций, которым это не необходимо) может иметь серьезные последствия в случае дебага приложений.

Когда вы определяете CFLAGS и CXXFLAGS, вы должны выбрать несколько флагов оптимизации. Значения по умолчанию, которые находятся в распакованном вами архиве stage3 доолжны быть достаточно хороши. Следующий пример это просто пример:

Код 4.2: Определение переменных CFLAGS и CXXFLAGS

CFLAGS="-O2 -march=i686 -pipe"

# Use the same settings for both variables

CXXFLAGS="${CFLAGS}"

Заметка: Вы также можете захотеть просмотреть «Гайд по оптимизации компиляции» (http://www.gentoo.org/doc/en/gcc-optimization.xml?style=printable) для большего количества информации о том, как разные опции компиляции могут повлиять на вашу систему.

MAKEOPTS

С помощью MAKEOPTS вы определяете, сколько параллельных компиляций должно проходить при установке пакета. Хорошим выбором будет число CPU (или ядер CPU) в вашей системе, плюс один. Но этот совет не всегда бывает идеален.

Код 4.3: MAKEOPTS для обычной, однопроцессорной системы.

MAKEOPTS="-j2"

Пристегнулись, сели, поехали!

Измените ваш файл /mnt/gentoo/etc/make.conf так, как вам нужно, и сохраните его (пользователи nano нажали бы Ctrl-X). Теперь вы готовы установить базовую систему Gentoo.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]