Gerard Beekmans - Linux From Scratch
- Название:Linux From Scratch
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Gerard Beekmans - Linux From Scratch краткое содержание
Gerard Beekmans
Copyright © 1999-2002 by Gerard Beekmans
Перевод: Денис Каледин, Ник Фролов, Алекс Казанков.
Версия 4.0
Эта книга описывает процесс создания Linux системы с нуля, используя лишь исходные коды необходимого программного обеспечения.
Linux From Scratch - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
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.
libstdc++
libstdc++ – библиотека C++. Она используется программами на C++ и содержит часто используемые функции. Таким образом, программисту не нужно писать стандартные функции (например, вывод строки текста на экран) с нуля при каждом создании программы.
libsupc++
libsupc++ предоставляет поддержку языка программирования C++. Помимо прочего, libsupc++ содержит функции для обработки исключений.
Зависимости GCC
Последняя проверка: версия 2.95.3.
Bash: sh Binutils: ar, as, ld, nm, ranlib Diffutils: cmp Fileutils: chmod, cp, ln, ls, mkdir, mv, rm, touch Find: find Gcc: cc, cc1, collect2, cpp0, gcc Grep: egrep, grep Make: make Patch: patch Sed: sed Sh-utils: basename, dirname, echo, expr, hostname, sleep, true, uname Tar: tar Texinfo: install-info, makeinfo Textutils: cat, tail, tr
Установка Zlib-1.1.4
Приблизительное время компиляции: 0.07 SBU Необходимое дисковое пространство: 1 MB
Инсталляция Zlib
Для инсталляции Zlib выполните:
./configure –prefix=/usr –shared && make LIBS="libz.so.1.1.4 libz.a" && make LIBS="libz.so.1.1.4 libz.a" install && mv /usr/lib/libz.so.* /lib && ln -sf ../../lib/libz.so.1 /usr/lib/libz.so && cp zlib.3 /usr/share/man/man3
Содержимое Zlib
Последняя проверка: версия 1.1.4.
Библиотеки
libz[a,so]
Описания
libz
Библиотека zlib, используемая многими программами, и реализующая методы (де)компрессии данных.
Зависимости Zlib
Зависимости еще не проверялись.
Установка Findutils-4.1
Приблизительное время компиляции: 0.10 SBU Необходимое место на диске: 3 MB
Инсталляция Findutils
Перед установкой пакета примените патч. Удостоверьтесь, что патч и пакет распакованы перед инсталляцией.
Для инсталляции Findutils выполните:
patch -Np1 -i ../findutils-4.1.patch && ./configure –prefix=/usr && make libexecdir=/usr/bin && make libexecdir=/usr/bin install
Замечания по соответствию FHS
По умолчанию, база данных updatedb находится /usr/var. Если вы хотите полного соответствия со стандартом FHS, установите ее в другом месте. Приведенные ниже команды используют совместимый с FHS файл базы данных /var/lib/misc/locatedb.
patch -Np1 -i ../findutils-4.1.patch && ./configure –prefix=/usr && make localstatedir=/var/lib/misc libexecdir=/usr/bin && make localstatedir=/var/lib/misc libexecdir=/usr/bin 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 Необходимое дисковое пространство: 15 MB
Инсталляция Gawk
Перед установкой пакета примените патч. Удостоверьтесь, что патч и пакет распакованы перед инсталляцией.
Предупреждение: Ни в коем случае не выполняйте команду make uninstallдля этого пакета, если вы установили патч, изменяющий определение директории libexec. Правило uninstall в скрипте Makefile выполнит команду rm -rf /*. Так как мы определили директорию libexec как /usr/bin, скрипт выполнит rm -rf /usr/bin/*
Для инсталляции Gawk выполните:
patch -Np1 -i ../gawk-3.1.1-2.patch && ./configure –prefix=/usr –libexecdir=/usr/bin && make && make install
Пояснение команд
patch -Np1 -i ../gawk-3.1.1-2.patch:Этот патч изменяет определение местоположения директории libexec. Он позволит нам переопределить ее с помощью опции –libexecdir к скрипту configure.
Содержимое 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.
(Зависимости пока не проверены)
Установка Ncurses-5.2
Приблизительное время компиляции: 1.88 SBU Необходимое дисковое пространство: 22 MB
Инсталляция Ncurses
Перед установкой пакета примените патч. Удостоверьтесь, что патч и пакет распакованы перед инсталляцией.
Для инсталляции Ncurses выполните:
patch -Np1 -i ../ncurses-5.2-2.patch && ./configure –prefix=/usr –with-shared && make && make install && chmod 755 /usr/lib/*.5.2 && mv /usr/lib/libncurses.so.5* /lib && ln -s libncurses.a /usr/lib/libcurses.a && ln -sf ../../lib/libncurses.so.5 /usr/lib/libncurses.so && ln -sf ../../lib/libncurses.so.5 /usr/lib/libcurses.so
Пояснения команд
patch -Np1 -i ../ncurses-5.2-patch:Этот патч устраняет проблему компиляции пакета с GCC-3.2, т.к. Ncurses использует конструкции, более недействительные в новом стандарте С++.
–with-shared:Эта опция указывает компилировать библиотеки ncurses совместного пользования.
chmod 755 *.5.2:Библиотеки совместного пользования должны быть исполняемыми. Однако процедура инсталляции Ncurses неверно устанавливает права, и приходится изменять их вручную.
Читать дальшеИнтервал:
Закладка: