diff options
Diffstat (limited to 'chapter06/flex.xml')
-rw-r--r-- | chapter06/flex.xml | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/chapter06/flex.xml b/chapter06/flex.xml new file mode 100644 index 000000000..96b414897 --- /dev/null +++ b/chapter06/flex.xml @@ -0,0 +1,133 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" + "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ + <!ENTITY % general-entities SYSTEM "../general.ent"> + %general-entities; +]> + +<sect1 id="ch-system-flex" role="wrap"> + <?dbhtml filename="flex.html"?> + + <title>Flex-&flex-version;</title> + + <indexterm zone="ch-system-flex"> + <primary sortas="a-Flex">Flex</primary> + </indexterm> + + <sect2 role="package"> + <title/> + + <para>The Flex package contains a utility for generating programs that + recognize patterns in text.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&flex-ch6-sbu;</seg> + <seg>&flex-ch6-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>Installation of Flex</title> + + <para>Prepare Flex for compilation:</para> + +<screen><userinput>./configure --prefix=/usr</userinput></screen> + + <para>Compile the package:</para> + +<screen><userinput>make</userinput></screen> + + <para>To test the results, issue: + <userinput>make check</userinput>.</para> + + <para>Install the package:</para> + +<screen><userinput>make install</userinput></screen> + + <para>There are some packages that expect to find the + <filename class="libraryfile">lex</filename> library in <filename + class="directory">/usr/lib</filename>. Create a symlink to account for + this:</para> + +<screen><userinput>ln -sv libfl.a /usr/lib/libl.a</userinput></screen> + + <para>A few programs do not know about <command>flex</command> yet and + try to run its predecessor, <command>lex</command>. To support those + programs, create a wrapper script named <filename>lex</filename> that + calls <filename>flex</filename> in <command>lex</command> emulation + mode:</para> + +<screen><userinput>cat > /usr/bin/lex << "EOF" +<literal>#!/bin/sh +# Begin /usr/bin/lex + +exec /usr/bin/flex -l "$@" + +# End /usr/bin/lex</literal> +EOF +chmod -v 755 /usr/bin/lex</userinput></screen> + + </sect2> + + <sect2 id="contents-flex" role="content"> + <title>Contents of Flex</title> + + <segmentedlist> + <segtitle>Installed programs</segtitle> + <segtitle>Installed library</segtitle> + + <seglistitem> + <seg>flex and lex</seg> + <seg>libfl.a</seg> + </seglistitem> + </segmentedlist> + + <variablelist> + <bridgehead renderas="sect3">Short Descriptions</bridgehead> + <?dbfo list-presentation="list"?> + <?dbhtml list-presentation="table"?> + + <varlistentry id="flex"> + <term><command>flex</command></term> + <listitem> + <para>A tool for generating programs that recognize patterns in text; + it allows for the versatility to specify the rules for pattern-finding, + eradicating the need to develop a specialized program</para> + <indexterm zone="ch-system-flex flex"> + <primary sortas="b-flex">flex</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="lex"> + <term><command>lex</command></term> + <listitem> + <para>A script that runs <command>flex</command> in + <command>lex</command> emulation mode</para> + <indexterm zone="ch-system-flex lex"> + <primary sortas="b-lex">lex</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="libfl.a"> + <term><filename class="libraryfile">libfl.a</filename></term> + <listitem> + <para>The <filename class="libraryfile">flex</filename> library</para> + <indexterm zone="ch-system-flex libfl.a"> + <primary sortas="c-libfl.a">libfl.a</primary> + </indexterm> + </listitem> + </varlistentry> + + </variablelist> + + </sect2> + +</sect1> |