Литмир - Электронная Библиотека
Содержание  
A
A

Установка Findutils-4.1

Приблизительное время компиляции: 0.12 SBU Необходимое дисковое пространство: 8 MB

Инсталляция Findutils

Перед установкой пакета примените патч. Удостоверьтесь, что патч и пакет распакованы перед инсталляцией.

Для инсталляции Findutils выполните:

patch -Np1 -i ../findutils-4.1.patch && CPPFLAGS=-Dre_max_failures=re_max_failures2 \ ./configure –prefix=$LFS/static && make LDFLAGS=-static && make install

Пояснения команд

patch -Np1 -i ../findutils-4.1.patch: Этот патч исправляет некоторые ошибки при компиляции, избегая конфликта переменных и исправляя синтаксис.

Содержимое Findutils

Последняя проверка: версия 4.1.

Программы

bigram, code, find, frcode, locate, updatedb и xargs

Описания

bigram

bigram используется вместе с code для создания поисковых баз старого типа. Больше информации об этих программах приведено на locatedb.5 man page.

code

code – предшественник frcode. Он использовался в старых поисковых базах.

find

find ищет файлы, отвечающие заданному критерию. Если критерий не задан, выводится список файлов в текущем каталоге и каталогах нижнего уровня.

frcode

frcode вызывается updatedb для сжатия списка файлов, используя front-compression и уменьшая размер базы данных в 4-5 раз.

locate

locate просматривает базу данных, содержащую сведения обо всех файлах и каталогах на файловой системе. Программа выводит имена файлов и каталогов в базе, совпадающие с заданным критерием. Если пользователь ищет файлы, программа просмотрит базу и сообщит, где находятся запрошенные файлы. Поиск даст результаты, только если база часто обновляется, иначе будет выдана устаревшая информация.

updatedb

updatedb обновляет поисковую базу. Просматривается вся файловая система (включая все смонтированные, если не указано обратное), каждый найденный файл и каталог записывается в базу, используемую locate. Неплохо обновлять базу хотя бы раз в день, чтобы избежать ее устаревания.

xargs

xargs выполняет команду относительно списка файлов. Список должен содержать одно имя в строке.

Зависимости Findutils

Последняя проверка: версия 4.1.

Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, cp, install, mv, rm Grep: egrep, grep Gcc: cc1, collect2, cpp0, gcc Make: make Patch: patch Sed: sed Sh-utils: basename, date, echo, hostname Textutils: cat, tr

Установка Gawk-3.1.1

Приблизительное время компиляции: 0.39 SBU Необходимое дисковое пространство: 17 MB

Инсталляция Gawk

Для инсталляции Gawk выполните:

CPPFLAGS=-Dre_max_failures=re_max_failures2 \ ./configure –prefix=$LFS/static –disable-nls && make LDFLAGS=-static && make install

Содержимое Gawk

Последняя проверка: версия 3.1.1.

Программы

awk, gawk, gawk-3.1.1, grcat, igawk, pgawk, pgawk-3.1.1, pwcat

Описания

awk

awk – символьная ссылка на gawk.

gawk, gawk-3.1.1

gawk – GNU реализация awk, языка поиска и обработки текстовых образцов.

grcat

grcat выполняет слияние базы групп, /etc/group.

igawk

igawk – скрипт, дающий gawk возможность включения файлов.

pgawk, pgawk-3.1.1

pgawk – профильная версия gawk.

pwcat

pwcat выполняет слияние базы паролей, /etc/passwd.

Зависимости Gawk

Последняя проверка: версия 3.1.0.

(Зависимости пока не проверены)

Установка GCC-3.2

Приблизительное время компиляции: 9.48 SBU Необходимое дисковое пространство: 326 MB

Инсталляция GCC

Перед установкой пакета примените патч. Удостоверьтесь, что патч и пакет распакованы перед инсталляцией.

Этот пакет известен своим нестабильным поведением при компиляции с измененными опциями оптимизации (включая опции -march и -mcpu). GCC рекомендуется компилировать с настройками по умолчанию. Следовательно, если вы задали переменные такие как CFLAGS или CXXFLAGS, изменяющие уровень оптимизации по умолчанию, рекомендуется убрать их при сборке пакета GCC. Изменяя оптимизации для GCC, вы действуете на свой страх и риск.

Для инсталляции GCC выполните:

patch -Np1 -i ../gcc-3.2.patch && patch -Np1 -i ../gcc-3.2-nofixincludes-2.patch && mkdir ../gcc-build && cd ../gcc-build && ../gcc-3.2/configure –prefix=/static –enable-languages=c \ –disable-nls –disable-shared && echo «#define HAVE_GAS_HIDDEN 1» >> gcc/auto-host.h && make BOOT_LDFLAGS=-static bootstrap && make prefix=$LFS/static install && ln -s gcc $LFS/static/bin/cc

Объяснения команд

patch -Np1 -i ../gcc-3.2.patch: Этот патч исправляет некоторые ошибки, в частности содержит «copy fix» и «var fix», документированные на сайте http://www.zipworld.com.au/~gschafer/lfs-tweaks.html.

patch -Np1 -i ../gcc-3.2-nofixincludes-2.patch: Предотвращает запуск скрипта fixincludes.

–prefix=/static: Это НЕ опечатка. При компиляции, GCC жестко прописывает пути, и нам необходимо передать путь /static в качестве префикса к скрипту ./configure. Реальный путь инсталляции мы укажем команде make install.

–enable-languages=c: Указание собрать компилятор Си. Компилятор C++ будет собран позже, в Главе 6, когда мы будем перекомпилировать GCC. Для сборки других компиляторов, опустите параметр –enable-languages.

echo «#define HAVE_GAS_HIDDEN 1»: Определим директиву ассемблера .hidden, для того чтобы впоследствии скомпилировать Glibc правильно.

make BOOT_LDFLAGS=-static: Это эквивалент опции LDFLAGS=-static, который мы задаем для использования статических ссылок при компиляции.

ln -s gcc $LFS/static/bin/cc: Создание символической ссылки $LFS/static/bin/gcc, необходимой для некоторых пакетов.

Содержимое GCC

Последняя проверка: версия 3.1.

Программы

c++, c++filt, cc (link to gcc), cc1, cc1plus, collect2, cpp, cpp0, g++, gcc, gccbug, gcov и tradcpp0

Описания

cc, cc1, cc1plus, gcc

Компилятор C. Компилятор переводит код из текстового формата в формат, понятный компьютеру. После того, как исходный код скомпилирован в объектный файл, линкер создаст исполняемый файл из одного или нескольких объектных.

c++, cc1plus, g++

Компилятор C++, эквивалент cc, gcc etc.

c++filt

Язык C++ позволяет осуществлять перезагрузку функций, делая возможным написание многих функций с одним именем (с разным набором параметром). Все имена функций C++ закодированы в низкоуровневые метки ассемблера (этот процесс известен как mangling). c++filt совершает обратное действие: низкоуровневые имена переводятся (demangling) в имена, понятные пользователю, так что линкер избегает конфликта между перезагруженными функциями.

collect2

collect2 помогает в компиляции конструкторов.

cpp, cpp0

cpp осуществляет препроцессинг исходных файлов, например включает в них содержимое заголовочных файлов. Просто добавьте в ваш исходный файл строку вроде #include . Препроцессор вставит содержимое заголовочного файла.

gccbug

gccbug – скрипт, облегчающий создание сообщений об ошибках.

gcov

gcov анализирует программы, чтобы помочь в создании более эффективного и быстрого кода путем его оптимизации.

tradcpp0

На данный момент описания нет.

Библиотеки

libgcc.a, libgcc_eh.a, libgcc_s.so, libiberty.a, libstdc++.[a,so], libsupc++.a

Описания

libgcc, libgcc_eh, libgcc_s

Файлы поддержки gcc времени исполнения.

libiberty

libiberty – коллекция подпрограмм, используемых различными программами GNU, включая getopt, obstack, strerror, strtol и strtoul.

12
{"b":"85741","o":1}