355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Gerard Beekmans » Linux From Scratch » Текст книги (страница 8)
Linux From Scratch
  • Текст добавлен: 24 сентября 2016, 07:05

Текст книги "Linux From Scratch"


Автор книги: Gerard Beekmans


Жанр:

   

ОС и Сети


сообщить о нарушении

Текущая страница: 8 (всего у книги 18 страниц)

Установка 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 неверно устанавливает права, и приходится изменять их вручную.

ln -sf libncurses.a libcurses.a: Некоторые программы для компоновки используют -lcurses вместо -lncurses. Создание этой символической ссылки устраняет проблему.

Содержимое Ncurses

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

Программы

captoinfo (ссылка на tic), clear, infocmp, infotocap (ссылка на tic), reset (ссылка на tset), tack, tic, toe, tput и tset.

Описания

captoinfo

captoinfo конвертирует описания termcap в описания terminfo.

clear

clear очищает экран, если это возможно. Тип терминала ищется в переменных окружения и базе terminfo, процедура очистки экрана зависит от найденного типа.

infocmp

infocmp используется для сравнения бинарной записи terminfo с другими записями, перезаписать описание terminfo, использовать поле terminfo use=, или вывести описание terminfo из бинарного файла (term) в различных форматах (противоположность тому. что делает tic).

infotocap

infotocap конвертирует описания terminfo в описания termcap.

reset

reset устанавливает режимы cooked и echo, отключает режимы cbreak и raw, включает трансляцию символов новой строки и сбрасывает все неустановленные специальные символы на значения по умолчанию перед инициализацией терминала вроде tset.

tack

tack – проверяет действия terminfo.

tic

tic – компилятор описаний записей terminfo. Программа транслирует файл terminfo из исходного в бинарный формат для использования библиотекой ncurses. Файлы terminfo содержат информацию о возможностях терминала.

toe

toe перечисляет все доступные типы терминалов по основному имени вместе с описаниями.

tput

tput использует базу terminfo, чтобы сделать информацию о терминале доступной командному интерпретатору, инициализировать или сбросить терминал, либо вернуть полное имя запрошенного типа терминала.

tset

tset инициализирует терминалы, что уже не используется широко. Необходимо для совместимости с 4.4BSD.

Библиотеки

libcurses.[a,so] (ссылка на libncurses.[a,so]), libform.[a,so], libform_g.a, libmenu.[a,so], libmenu_g.a, libncurses++.a, libncurses.[a,so], libncurses_g.a, libpanel.[a,so] и libpanel_g.a

libcurses, libncurses++, libncurses, libncurses_g

Это – основные библиотеки пакета, используются для отображения текста на экране (зачастую нестандартным способом). Пример использования ncurses – процедура «make menuconfig» сборки ядра.

libform, libform_g

libform используется для реализации форм в ncurses.

libmenu, libmenu_g

libmenu используется для реализации меню в ncurses.

libpanel, libpanel_g

libpanel используется для реализации панелей в ncurses.

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

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

Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, cp, install, ln, mkdir, mv, rm Gcc: c++, cc1, cc1plus, collect2, cpp0, gcc Glibc: ldconfig Grep: egrep, fgrep, grep Make: make Gawk: gawk Sed: sed Sh-utils: basename, date, echo, expr, hostname, uname Textutils: cat, sort, tr, wc

Установка Vim-6.1

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

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

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

Если вам не по душе Vim, см. инструкции по инсталляции других редакторов http://beyond.linuxfromscratch.org/view/cvs/postlfs/editors.html. На данный момент есть инструкции для редакторов Emacs, nano, и joe.

Для установки Vim выполните:

patch -Np1 -i ../vim-6.1.patch && ./configure –prefix=/usr && make CPPFLAGS=-DSYS_VIMRC_FILE=\"/etc/vimrc\" && make install && ln -s vim /usr/bin/vi

Если вы планируете установить систему X Window для LFS, вам понадобится перекомпилировать Vim после установки Х. Vim поставляется с GUI версией редактора, требующей установленной системы X Window и некоторых дополнительных библиотек. Для получения подробной информации обратитесь к документации Vim.

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

patch -Np1 -i ../vim-6.1.patch: Этот патч устраняет проблему компиляции с GCC-3.2.

make CPPFLAGS=-DSYS_VIMRC_FILE=\"/etc/vimrc\": Эта опция приводит к тому, что vim берет глобальные настройки из файла /etc/vimrc. Обычно этот файл берется из /usr/share/vim, однако каталог /etc – более логичное место для этого файла.

Содержимое Vim

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

Программы

efm_filter.pl, efm_perl.pl, ex (ссылка на vim), less.sh, mve.awk, pltags.pl, ref, rview (ссылка на vim), rvim (ссылка на vim), shtags.pl, tcltags, vi (ссылка на vim), view (ссылка на vim), vim, vim132, vim2html.pl, vimdiff (ссылка на vim), vimm, vimspell.sh, vimtutor и xxd

Описания

efm_filter.pl

efm_filter.pl – фильтр, читающий из стандартного ввода, пишущий на стандартный вывод и создающий файл ошибок, обрабатываемый vim.

efm_perl.pl

efm_perl.pl форматирует сообщения об ошибках интерпретатора Perl для использования в quickfix режиме vim.

ex

ex запускает vim в режиме Ex.

less.sh

less.sh – скрипт, запускающий vim, используя less.vim.

mve.awk

mve.awk обрабатывает ошибки vim.

pltags.pl

pltags.pl создает файл тегов кода Perl для использования vim.

ref

ref проверяет написание параметров.

rview

rview – ограниченная версия view. Нельзя передавать команды интерпретатору и vim не может быть приостановлен.

rvim

rvim is the restricted version of vim. Нельзя передавать команды интерпретатору и vim не может быть приостановлен.

shtags.pl

shtags.pl генерирует файл тегов для скриптов perl.

tcltags

tcltags генерирует файл тегов кода TCL.

vi

vi запускает vim в режиме совместимости с vi.

view

view запускает vim в режиме «только для чтения».

vim

vim запускает vim в стандартном режиме.

vim132

vim132 запускает vim в терминале в 132 колонки.

vim2html.pl

vim2html.pl конвертирует документацию vim в HTML.

vimdiff

vimdiff сравнивает две или три версии файла и показывает различия.

vimm

vimm включает модель ввода DEC locator на удаленном терминале.

vimspell.sh

vimspell.sh просматривает файл и генерирует синтаксические выражения, выделяемые в vim.

vimtutor

vimtutor запускает обучение работе с Vim.

xxd

xxd конвертирует бинарный ввод из файла в шестнадцатеричный и обратно.

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

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

Bash: sh Binutils: as, ld, strip Diffutils: cmp, diff Fileutils: chmod, cp, ln, mkdir, mv, rm, touch Find: find Gcc: cc1, collect2, cpp0, gcc Grep: egrep, grep Make: make Net-tools: hostname Sed: sed Sh-utils: echo, expr, uname, whoami Textutils: cat, tr, wc

Установка Bison-1.35

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

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

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

./configure –prefix=/usr && make && make install

Некоторые программы не знают о существовании bison и пытаются найти программу yacc (bison – альтернатива (предпочтительная) команде yacc). Итак, для устранения возможных проблем, создадим скрипт bash под названием yacc. Он будет вызывать команду bison и эмулировать имена выходных файлов в соответствии со стандартами yacc.

Создадим файл /usr/bin/yacc:

cat > /usr/bin/yacc << «EOF»

#!/bin/sh

# Begin /usr/bin/yacc

exec /usr/bin/bison -y «$@»

# End /usr/bin/yacc

EOF chmod 755 /usr/bin/yacc

Содержимое Bison

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

Программы

bison и yacc

Описания

bison

bison – генератор анализаторов синтаксиса (parser) выражений (заменяет yacc – Yet Another Compiler Compiler). Что же делает bison? Это программа, генерирующая программу, анализирующую структуру текстового файла. Вместо написания собственной программы пользователь указывает, как соотносятся объекты, и основываясь на данных правилах, создается анализатор. Существует множество примеров анализа синтаксиса, например калькулятор.

Дано выражение:

1 + 2 * 3

Человек легко получит результат 7. Почему? Because of the structure. Наш мозг знает, как интерпретировать выражение. Компьютер этого не знает, и bison инструмент, представляющий выражение компьютеру в следующем виде:

+ / * 1 / 2 3

Начиная с вершины дерева и обрабатывая 2 and 3, соединенных знаком умножения, компьютер перемножает 2 и 3. Результат умножения запоминается и следующее, что обрабатывается – 2*3 и 1, соединенные знаком сложения. Сложение 1 и предыдущего результата дает 7. Все составные выражения могут быть преобразованы в подобное дерево и вычислены. Конечно же, bison используется не только в калькуляторах.

yacc

Мы написали скрипт bash с именем yacc, вызывающий bison с опцией -y. Это необходимо для совместимости с программами, использующими yacc вместо bison.

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

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

Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, cp, install, ln, ls, mkdir, mv, rm, rmdir Gcc: cc, cc1, collect2, cpp0, gcc Grep: egrep, fgrep, grep Make: make Sed: sed Sh-utils: basename, dirname, echo, expr, hostname, sleep, uname Texinfo: install-info Textutils: cat, head, tr, uniq

Установка Less-374

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

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

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

./configure –prefix=/usr –bindir=/bin –sysconfdir=/etc && make && make install

Содержимое Less

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

Программы

less, lessecho и lesskey

Description

less

less – текстовый просмотрщик. Отображает содержимое файла с возможностью прокрутки. Less – улучшение утилиты more. Имеется возможность обратной прокрутки, нет необходимости считывать весь файл при его загрузке, что облегчает чтение больших файлов.

lessecho

lessecho необходим для подстановок метасимволов, вроде * и ?, в именах файлов на системах Unix.

lesskey

lesskey используется для установок клавиш less.

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

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

Bash: sh Binutils: as, ld Diffutils: cmp Fileutils: chmod, install, mv, rm, touch Grep: egrep, grep Gcc: cc1, collect2, cpp0, gcc Make: make Sed: sed Sh-utils: expr, hostname, uname Textutils: cat, tr

Установка Groff-1.18

Приблизительное время компиляции: 1.08 SBU

Необходимое дисковое пространство: 18 MB

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

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

./configure –prefix=/usr &&

make PROCESSEDEXAMPLEFILES="" &&

make PROCESSEDEXAMPLEFILES="" install &&

ln -s soelim /usr/bin/zsoelim &&

ln -s eqn /usr/bin/geqn &&

ln -s tbl /usr/bin/gtbl

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

make PROCESSEDEXAMPLEFILES="": У Groff существует несколько зависимостей, которые мы не будем устанавливать. Эта опция отключает потребность в них.

ln -s ...: Эти символические ссылки необходимы для корректной работы некоторых программ xman и других программ работы с документами groff/man.

Contents of Groff

Last checked against version 1.17.2.

Program Files

addftinfo, afmtodit, eqn, geqn (link to eqn), grn, grodvi, groff, grog, grolbp, grolj4, grops, grotty, gtbl (link to tbl), hpftodit, indxbib, lkbib, lookbib, mmroff, neqn, nroff, pfbtops, pic, post-grohtml, pre-grohtml, refer, soelim, tbl, tfmtodit, troff and zsoelim (link to soelim)

Descriptions

addftinfo

addftinfo reads a troff font file and adds some additional font-metric information that is used by the groff system.

afmtodit

afmtodit creates a font file for use with groff and grops.

eqn

eqn compiles descriptions of equations embedded within troff input files into commands that are understood by troff.

geqn

geqn is the GNU implementation of eqn.

grn

grn is a groff preprocessor for gremlin files.

grodvi

grodvi is a driver for groff that produces TeX dvi format.

groff

groff is a front-end to the groff document formatting system. Normally it runs the troff program and a post-processor appropriate for the selected device.

grog

grog reads files and guesses which of the groff options -e, -man, -me, -mm, -ms, -p, -s, and -t are required for printing files, and prints the groff command including those options on the standard output.

grolbp

grolbp is a groff driver for Canon CAPSL printers (LBP-4 and LBP-8 series laser printers).

grolj4

grolj4 is a driver for groff that produces output in PCL5 format suitable for an HP Laserjet 4 printer.

grops

grops translates the output of GNU troff to Postscript.

grotty

grotty translates the output of GNU troff into a form suitable for typewriter-like devices.

gtbl

gtbl is the GNU implementation of tbl.

hpftodit

hpftodit creates a font file for use with groff -Tlj4 from an HP tagged font metric file.

indxbib

indxbib makes an inverted index for the bibliographic databases a specified file for use with refer, lookbib, and lkbib.

lkbib

lkbib searches bibliographic databases for references that contain specified keys and prints any references found on the standard output.

lookbib

lookbib prints a prompt on the standard error (unless the standard input is not a terminal), reads from the standard input a line containing a set of keywords, searches the bibliographic databases in a specified file for references containing those keywords, prints any references found on the standard output and repeats this process until the end of input.

mmroff

mmroff is a simple preprocessor for groff.

neqn

The neqn script formats equations for ascii output.

nroff

The nroff script emulates the nroff command using groff.

pfbtops

pfbtops translates a Postscript font in .pfb format to ASCII.

pic

pic compiles descriptions of pictures embedded within troff or TeX input files into commands that are understood by TeX or troff.

pre-grohtml and post-grohtml

pre– and post-grohtml translate the output of GNU troff to html.

refer

refer copies the contents of a file to the standard output, except that lines between .[ and .] are interpreted as citations, and lines between .R1 and .R2 are interpreted as commands about how citations are to be processed.

soelim

soelim reads files and replaces lines of the form .so file by the contents of file.

tbl

tbl compiles descriptions of tables embedded within troff input files into commands that are understood by troff.

tfmtodit

tfmtodit creates a font file for use with groff -Tdvi.

troff

troff is highly compatible with Unix troff. Usually it should be invoked using the groff command, which will also run preprocessors and post-processors in the appropriate order and with the appropriate options.

zsoelim

zsoelim is the GNU implementation of soelim.

Groff Installation Dependencies

Last checked against version 1.17.2.

Bash: sh Binutils: ar, as, ld, ranlib Bison: bison Diffutils: cmp Fileutils: chmod, cp, install, ln, ls, mkdir, mv, rm, touch Gcc: cc1, cc1plus, collect2, cpp0, g++, gcc Grep: egrep, grep Make: make Gawk: awk Sed: sed Sh-utils: basename, date, echo, expr, hostname, uname Textutils: cat, tr

Установка Textutils-2.1

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

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

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

./configure –prefix=/usr && make && make install && mv /usr/bin/{cat,head} /bin

Содержимое Textutils

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

Программы

cat, cksum, comm, csplit, cut, expand, fmt, fold, head, join, md5sum, nl, od, paste, pr, ptx, sort, split, sum, tac, tail, tr, tsort, unexpand, uniq и wc

Описание

cat

cat выводит файлы на стандартный вывод.

cksum

cksum выводит контрольную сумму CRC и объем в байтах каждого указанного файла.

comm

comm построчно сравнивает два отсортированных файла.

csplit

csplit выводит части файла, разделенные заданными строками, в файлы xx01, xx02, ..., и размер каждой части на стандартный вывод.

cut

cut выводит указанные строки из указанных файлов на стандартный вывод.

expand

expand конвертирует знаки табуляции в файле в пробелы и выводит результат на стандартный вывод.

fmt

fmt форматирует каждый абзац в указанных файлах и выводит результат на стандартный вывод.

fold

fold делает переносы вводимых строк из указанных файлов (по умолчанию, со стандартного ввода) и выводит результат на стандартный вывод.

head

head выводит первые x (по умолчанию 10) строк каждого указанного файла на стандартный вывод.

join

join соединяет строки двух файлов в поля.

md5sum

md5sum выводит или проверяет контрольные суммы MD5.

nl

nl выводит каждый указанный файл на стандартный вывод, добавляя номера строк.

od

od выводит файл в различных форматах, по умолчанию в восьмеричном, на стандартный вывод.

paste

paste выводит строки, соответствующие заданным образцам из указанных файлов и разделенные символами табуляции, на стандартный вывод.

pr

pr разделяет файлы на страницы или колонки для распечатки.

ptx

ptx составляет оглавление файла.

sort

sort выводит на стандартный вывод построчно отсортированное слияние файлов.

split

split разбивает входной файл на части заданного размера PREFIXaa, PREFIXab, ...

sum

sum выводит контрольную сумму и количество занимаемых блоков каждого указанного файла.

tac

tac выводит каждый указанный файл на стандартный вывод last line first.

tail

tail выводит последние xx (по умолчанию 10) строк каждого указанного файла на стандартный вывод.

tr

tr заменяет, вставляет, и/или удаляет символы из стандартного ввода, выводя результат на стандартный вывод.

tsort

tsort выводит полностью упорядоченные списки, учитывая уже проведенную сортировку указанных файлов.

unexpand

unexpand конвертирует пробелы в каждом файле в символы табуляции, выводя результат на стандартный вывод.

uniq

uniq удаляет повторяющиеся строки из отсортированного файла.

wc

wc выводит количество строк, слов и размер в байтах каждого указанного файла и сумму результатов, если указано более одного файла.

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

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

Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, install, ls, mv, rm Gettext: msgfmt, xgettext Gcc: cc, cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Net-tools: hostname Perl: perl Sed: sed Sh-utils: basename, echo, expr, sleep, uname Tar: tar Texinfo: install-info, makeinfo Textutils: cat, tr

Установка Sed-3.02

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

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

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

./configure –prefix=/usr –bindir=/bin && make && make install

Содержимое Sed

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

Программы

sed

Описания

sed

sed – редактор потоков. Он используется для основных преобразований текста на потоке ввода (файл или ввод из другого процесса).

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

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

Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, ranlib Diffutils: cmp Fileutils: chmod, install, ls, mv, rm Gcc: cc1, collect2, cpp0, gcc Glibc: getconf Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Sed: sed Sh-utils: echo, expr, hostname, sleep Texinfo: install-info, makeinfo Textutils: cat, tr

Установка Flex-2.5.4a

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

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

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

./configure –prefix=/usr && make && make install

Некоторые программы не знают о существовании flex и пытаются найти программу lex (flex – альтернатива (предпочтительная) команде lex). Итак, для устранения возможных проблем, создадим скрипт bash под названием lex. Он будет вызывать команду flex и эмулировать lex.

Создадим файл /usr/bin/lex:

cat > /usr/bin/lex << «EOF»

#!/bin/sh

# Begin /usr/bin/lex

exec /usr/bin/flex -l «$@»

# End /usr/bin/lex

EOF chmod 755 /usr/bin/lex

Содержимое Flex

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

Program Files

flex, flex++ (ссылка на flex) and lex

Descriptions

flex

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

flex++

flex++ вызывает версию flex, используемую для сканеров C++.

lex

Мы создали скрипт lex, вызывающий flex с опцией -l. Это необходимо для совместимости с программами, использующими lex вместо flex.

Библиотеки

libfl.a

Описания

libfl

libfl – библиотека flex.

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

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

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


    Ваша оценка произведения:

Популярные книги за неделю