Added a few comments here and there
[linux_from_scratch.git] / BOOK / chapter06 / flex.xml
blob11683221d61a9426b26d25a035b6bdb8d24e789c
1 <sect1 id="ch-system-flex" xreflabel="Flex">
2 <title>Installing Flex-&flex-version;</title>
3 <?dbhtml filename="flex.html" dir="chapter06"?>
5 <para>The Flex package contains a utility for generating programs that
6 recognize patterns in text.</para>
8 <screen>&buildtime; &flex-time;
9 &diskspace; &flex-compsize;</screen>
11 &aa-flex-down;
12 &aa-flex-dep;
14 <sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
16 <sect2>
17 <title>Installation of Flex</title>
19 <para>Prepare Flex for compilation:</para>
21 <screen><userinput>./configure --prefix=/usr</userinput></screen>
23 <para>Compile the package:</para>
25 <screen><userinput>make</userinput></screen>
27 <para>This package has a test suite available which can perform a number of
28 checks to ensure it built correctly.  Should you choose to run it, the 
29 following command will do so:</para>
31 <screen><userinput>make bigcheck</userinput></screen>
33 <para>And install the package:</para>
35 <screen><userinput>make install</userinput></screen>
37 <para>There are some packages that expect to find the <emphasis>lex</emphasis>
38 library in <filename>/usr/lib</filename>. Create a symlink to account for
39 this:</para>
41 <screen><userinput>ln -s libfl.a /usr/lib/libl.a</userinput></screen>
43 <para>A few programs don't know about <command>flex</command> yet and try
44 to run its predecessor <command>lex</command>. To support those programs,
45 create a wrapper script named <filename>lex</filename> that calls
46 <command>flex</command> in <emphasis>lex</emphasis> emulation mode:</para>
48 <screen><userinput>cat &gt; /usr/bin/lex &lt;&lt; "EOF"</userinput>
49 #!/bin/sh
50 # Begin /usr/bin/lex
52 exec /usr/bin/flex -l "$@"
54 # End /usr/bin/lex
55 <userinput>EOF
56 chmod 755 /usr/bin/lex</userinput></screen>
58 </sect2>
60 &aa-flex-shortdesc;
61 &aa-flex-desc;
63 </sect1>