source: chapter05/expect.xml@ 7d6c9a6

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 12.2 12.2-rc1 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/loongarch-12.2 xry111/mips64el xry111/multilib xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 7d6c9a6 was a877994, checked in by Robert Connolly <robert@…>, 16 years ago

cp -v, to .orig, in Expect chap5, like we do with the rest of the book.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@8594 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 5.6 KB
RevLine 
[673b0d8]1<?xml version="1.0" encoding="ISO-8859-1"?>
[b06ca36]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[673b0d8]4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
[09fb7a09]7
[81fd230]8<sect1 id="ch-tools-expect" role="wrap">
[09fb7a09]9 <?dbhtml filename="expect.html"?>
10
[e747759]11 <sect1info condition="script">
12 <productname>expect</productname>
13 <productnumber>&expect-version;</productnumber>
14 <address>&expect-url;</address>
15 </sect1info>
16
[09fb7a09]17 <title>Expect-&expect-version;</title>
18
19 <indexterm zone="ch-tools-expect">
20 <primary sortas="a-Expect">Expect</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
[673b0d8]25
[09fb7a09]26 <para>The Expect package contains a program for carrying out scripted
27 dialogues with other interactive programs.</para>
[bc82645e]28
[09fb7a09]29 <segmentedlist>
30 <segtitle>&buildtime;</segtitle>
31 <segtitle>&diskspace;</segtitle>
[5888299]32
[09fb7a09]33 <seglistitem>
[e4a5635]34 <seg>&expect-ch5-sbu;</seg>
35 <seg>&expect-ch5-du;</seg>
[09fb7a09]36 </seglistitem>
37 </segmentedlist>
[73aedd1d]38
[09fb7a09]39 </sect2>
40
41 <sect2 role="installation">
42 <title>Installation of Expect</title>
43
44 <para>First, fix a bug that can result in false failures during the GCC test
45 suite run:</para>
[3d36131c]46
[0445a3d]47<screen><userinput remap="pre">patch -Np1 -i ../&expect-spawn-patch;</userinput></screen>
[73aedd1d]48
[1100dfc]49 <para>Next, fix a bug that is a result of recent Tcl changes:</para>
50
51<screen><userinput remap="pre">patch -Np1 -i ../&expect-tcl-patch;</userinput></screen>
52
[9d4c6dc]53 <para>Next, force Expect's configure script to use <filename>/bin/stty</filename>
54 instead of a <filename>/usr/local/bin/stty</filename> it may find on the host system.
55 This will ensure that our testsuite tools remain sane for the final builds of our
[f19e766]56 toolchain:</para>
[9d4c6dc]57
[a877994]58<screen><userinput remap="pre">cp -v configure{,.orig}
59sed 's:/usr/local/bin:/bin:' configure.orig &gt; configure</userinput></screen>
[9d4c6dc]60
[09fb7a09]61 <para>Now prepare Expect for compilation:</para>
[73aedd1d]62
[0445a3d]63<screen><userinput remap="configure">./configure --prefix=/tools --with-tcl=/tools/lib \
[09fb7a09]64 --with-tclinclude=/tools/include --with-x=no</userinput></screen>
65
66 <variablelist>
67 <title>The meaning of the configure options:</title>
68
69 <varlistentry>
70 <term><parameter>--with-tcl=/tools/lib</parameter></term>
71 <listitem>
72 <para>This ensures that the configure script finds the Tcl
73 installation in the temporary tools location instead of possibly
74 locating an existing one on the host system.</para>
75 </listitem>
76 </varlistentry>
77
78 <varlistentry>
79 <term><parameter>--with-tclinclude=/tools/include</parameter></term>
80 <listitem>
81 <para>This explicitly tells Expect where to find Tcl's internal
82 headers. Using this option avoids conditions where
83 <command>configure</command> fails because it cannot automatically
84 discover the location of Tcl's headers.</para>
85 </listitem>
86 </varlistentry>
87
88 <varlistentry>
89 <term><parameter>--with-x=no</parameter></term>
90 <listitem>
91 <para>This tells the configure script not to search for Tk (the
92 Tcl GUI component) or the X Window System libraries, both of which
93 may reside on the host system but will not exist in the temporary
94 environment.</para>
95 </listitem>
96 </varlistentry>
97
98 </variablelist>
99
100 <para>Build the package:</para>
[73aedd1d]101
[0445a3d]102<screen><userinput remap="make">make</userinput></screen>
[73aedd1d]103
[0445a3d]104 <para>To test the results, issue:</para>
105
106<screen><userinput remap="test">make test</userinput></screen>
107
108 <para>Note that the Expect test suite is known to experience failures under
[09fb7a09]109 certain host conditions that are not within our control. Therefore,
110 test suite failures here are not surprising and are not considered
111 critical.</para>
[73aedd1d]112
[09fb7a09]113 <para>Install the package:</para>
[73aedd1d]114
[0445a3d]115<screen><userinput remap="install">make SCRIPTS="" install</userinput></screen>
[73aedd1d]116
[09fb7a09]117 <variablelist>
118 <title>The meaning of the make parameter:</title>
119
120 <varlistentry>
121 <term><parameter>SCRIPTS=""</parameter></term>
122 <listitem>
123 <para>This prevents installation of the supplementary Expect
124 scripts, which are not needed.</para>
125 </listitem>
126 </varlistentry>
127
128 </variablelist>
129
130 </sect2>
131
132 <sect2 id="contents-expect" role="content">
133 <title>Contents of Expect</title>
134
135 <segmentedlist>
136 <segtitle>Installed program</segtitle>
137 <segtitle>Installed library</segtitle>
138
139 <seglistitem>
140 <seg>expect</seg>
141 <seg>libexpect-&expect-lib-version;.a</seg>
142 </seglistitem>
143 </segmentedlist>
144
145 <variablelist>
146 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
147 <?dbfo list-presentation="list"?>
148 <?dbhtml list-presentation="table"?>
149
150 <varlistentry id="expect">
151 <term><command>expect</command></term>
152 <listitem>
153 <para>Communicates with other interactive programs according
154 to a script</para>
155 <indexterm zone="ch-tools-expect expect">
156 <primary sortas="b-expect">expect</primary>
157 </indexterm>
158 </listitem>
159 </varlistentry>
160
161 <varlistentry id="libexpect">
162 <term><filename class="libraryfile">libexpect-&expect-lib-version;.a</filename></term>
163 <listitem>
164 <para>Contains functions that allow Expect to be used as a Tcl
165 extension or to be used directly from C or C++ (without Tcl)</para>
166 <indexterm zone="ch-tools-expect libexpect">
167 <primary sortas="c-libexpect-&expect-lib-version;">libexpect-&expect-lib-version;</primary>
168 </indexterm>
169 </listitem>
170 </varlistentry>
171
172 </variablelist>
173
174 </sect2>
[673b0d8]175
176</sect1>
Note: See TracBrowser for help on using the repository browser.