6.43. Flex-2.5.37

Flex パッケージは、字句パターンを認識するプログラムを生成するユーティリティを提供します。

概算ビルド時間: 0.4 SBU
必要ディスク容量: 39 MB

6.43.1. Flex のインストール

まずは縮退テスト (regression test) に関しての修正を行います。

patch -Np1 -i ../flex-2.5.37-bison-2.6.1-1.patch

Flex をコンパイルするための準備をします。

./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info

パッケージをコンパイルします。

make

コンパイル結果をテストするために以下を実行します。(約 0.5 SBU)

make -k check

最新の bison との互換性がないことから、失敗するテストが二つあります。

パッケージをインストールします。

make install

他のパッケージの中には lex ライブラリが /usr/lib ディレクトリにあるものとして動作しています。 これに対応するためシンボリックリンクを作成します。

ln -sv libfl.a /usr/lib/libl.a

プログラムの中には flex コマンドが用いられず、その前身である lex コマンドを実行しようとするものがあります。 そういったプログラムへ対応するために lex という名のラッパースクリプトを生成します。 このスクリプトは lex のエミュレーションモードとして flex を実行します。

cat > /usr/bin/lex << "EOF"
#!/bin/sh
# Begin /usr/bin/lex

exec /usr/bin/flex -l "$@"

# End /usr/bin/lex
EOF
chmod -v 755 /usr/bin/lex

必要ならドキュメントファイル flex.pdf をインストールします。

mkdir -v /usr/share/doc/flex-2.5.37
cp    -v doc/flex.pdf /usr/share/doc/flex-2.5.37

6.43.2. Flex の構成

インストールプログラム: flex, lex
インストールライブラリ: libfl.a, libfl_pic.a

概略説明

flex

テキスト内のパターンを認識するためのプログラムを生成するツール。 これは多彩なパターン検索の規則構築を可能とします。 これを利用することで特別なプログラムの生成が不要となります。

lex

lex のエミュレーションモードとして flex を実行するスクリプト。

libfl.a

flex ライブラリ。