Current BE-LFS (but w/ GCC 3.3.3) merged -> 6.0 branch
[linux_from_scratch.git] / newxml / chapter06 / bison.xml
blob4202899d1a04df16969979e119e9d006bfca88eb
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
3   <!ENTITY % general-entities SYSTEM "../general.ent">
4   %general-entities;
5 ]>
6 <sect1 id="ch-system-bison" xreflabel="Bison">
7 <title>Bison-&bison-version;</title>
8 <?dbhtml filename="bison.html"?>
10 <indexterm zone="ch-system-bison"><primary sortas="a-Bison">Bison</primary></indexterm>
12 <para>The Bison package contains a parser generator.</para>
14 <screen>&buildtime; 0.6 SBU
15 &diskspace; 10.6 MB</screen>
17 <para>Bison installation depends on: Bash, Binutils, Coreutils, Diffutils,
18 GCC, Gettext, Glibc, Grep, M4, Make, Sed.</para>
22 <sect2>
23 <title>Installation of Bison</title>
25 <para>First fix a minor compilation problem that Bison has with some packages,
26 the patch is back-ported from CVS:</para>
28 <screen><userinput>patch -Np1 -i ../bison-&bison-version;-attribute.patch</userinput></screen>
30 <para>Now prepare Bison for compilation:</para>
32 <screen><userinput>./configure --prefix=/usr</userinput></screen>
34 <para>Compile the package:</para>
36 <screen><userinput>make</userinput></screen>
38 <para>To test the results, issue:
39 <userinput>make check</userinput>.</para>
41 <para>Now install the package:</para>
43 <screen><userinput>make install</userinput></screen>
45 </sect2>
48 <sect2 id="contents-bison"><title>Contents of Bison</title>
50 <para><emphasis>Installed programs</emphasis>: bison and yacc</para>
52 <para><emphasis>Installed library</emphasis>: liby.a</para>
54 </sect2>
57 <sect2><title>Short descriptions</title>
59 <indexterm zone="ch-system-bison bison"><primary sortas="b-bison">bison</primary></indexterm>
60 <para id="bison"><command>bison</command> generates, from a series of rules, a program
61 for analyzing the structure of text files. Bison is a replacement for yacc
62 (Yet Another Compiler Compiler).</para>
64 <indexterm zone="ch-system-bison yacc"><primary sortas="b-yacc">yacc</primary></indexterm>
65 <para id="yacc"><command>yacc</command> is a wrapper for bison, meant for programs
66 that still call yacc instead of bison. It calls bison with the -y option.</para>
68 <indexterm zone="ch-system-bison liby.a"><primary sortas="c-liby.a">liby.a</primary></indexterm>
69 <para id="liby.a"><command>liby.a</command> is the Yacc library containing
70 implementations of Yacc-compatible yyerror and main functions. This library
71 is normally not very useful, but POSIX requires it.</para>
73 </sect2>
77 </sect1>