6.29. Flex-2.5.31
6.29. Flex-2.5.31
Пакет Flex используется для генерации программ, которые могут обрабатывать шаблоны в тексте.
Расчетное время сборки 0.1 SBU
Требуемое место на диске 3.4 MB
Flex - зависимости установки: Bash, Binutils, Bison, Coreutils, Diffutils, GCC, Gettext, Glibc, Grep, M4, Make и Sed
6.29.1. Инсталируем Flex
Flex содержит несколько известных проблем. Исправим их с помощью следующего патча:
patch -Np1 -i ../flex-2.5.31-debian_fixes-2.patch
GNU autotools определит, что исходный код Flex был изменен предыдущим патчем и, соответственно, попытается обновить страницы документации. Это не работает на многих системах и основная страница остается неизменной, поэтому подтверждаем, что она не была изменена:
touch doc/flex.1
Подготавливаем Flex для компиляции:
./configure --prefix=/usr
Компилируем пакет
make
Для проверки результата вводим: make check.
Устанавливаем пакет
make install
Некоторые пакеты ищут библиотеку lex в /usr/lib. Создадим необходимую ссылку:
ln -s libfl.a /usr/lib/libl.a
Некоторые программы не знают о flex и используют его предыдущий вариант, lex. Для поддержки таких программ создадим shell-скрипт lex который будет вызывать flex в режиме эмуляции 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, flex++ (ссылка на flex) и lex
Проинсталированные библиотеки: libfl.a
Короткое описание
- flex
-
Инструмент для генерации программ, которые могут обрабатывать шаблоны в тексте; он допускает для разнообразных программ указывать правила для поиска по образцу, делая ненужной разработку специальных программы
- flex++
-
Запрашивает версию flex которая используется исключительно для сканеров C++
- lex
-
Скрипт, который запускает flex в режиме эмуляции lex
- libfl.a
-
Библиотека flex