source: general/prog/python.xml@ 82799f3

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 82799f3 was ce33273, checked in by Randy McMurchy <randy@…>, 14 years ago

Updated the Python instructions to note the circular dependency with Tk

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8322 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.8 KB
RevLine 
[52d29f7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[52d29f7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[83f69e5d]7 <!ENTITY python-download-http "http://www.python.org/ftp/python/&Python-version;/Python-&Python-version;.tar.bz2">
[fb2e525]8 <!ENTITY python-download-ftp "&gentoo-ftp-repo;/Python-&Python-version;.tar.bz2">
[29f47569]9 <!ENTITY python-md5sum "fee5408634a54e721a93531aba37f8c1">
[48b816cb]10 <!ENTITY python-size "11 MB">
[3a94882]11 <!ENTITY python-buildsize "171 MB (23MB for the test suite, additional 26MB for the documentation)">
[48b816cb]12 <!ENTITY python-time "1 SBU (additional 2.9 SBU to run the test suite)">
[3a94882]13 <!ENTITY pythonhtmldoc-download-http "http://docs.python.org/ftp/python/doc/&python-majorver;/python-&python-majorver;-docs-html.tar.bz2">
14 <!ENTITY pythonhtmldoc-md5sum "cfcd4b9b00ba1e7496b5d823692370a4">
15 <!ENTITY pythonhtmldoc-size "3.3 MB">
[52d29f7]16]>
17
[3fe8b511]18<sect1 id="python" xreflabel="Python-&Python-version;">
[256ee72c]19 <?dbhtml filename="python.html" ?>
[83f69e5d]20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>Python-&Python-version;</title>
27
28 <indexterm zone="python">
29 <primary sortas="a-Python">Python</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to Python</title>
34
35 <para>The <application>Python</application> package contains the
36 <application>Python</application> development environment.
37 This is useful for object-oriented programming, writing scripts,
38 prototyping large programs or developing entire applications.</para>
39
[48b816cb]40 <!-- Python compiled against Pth, OpenSSL, and SQLite.
41 326 tests OK, 36 tests skipped, 0 failures -->
42
43 &lfs65_checked;
44
[83f69e5d]45 <bridgehead renderas="sect3">Package Information</bridgehead>
46 <itemizedlist spacing="compact">
47 <listitem>
48 <para>Download (HTTP): <ulink url="&python-download-http;"/></para>
49 </listitem>
50 <listitem>
51 <para>Download (FTP): <ulink url="&python-download-ftp;"/></para>
52 </listitem>
53 <listitem>
54 <para>Download MD5 sum: &python-md5sum;</para>
55 </listitem>
56 <listitem>
57 <para>Download size: &python-size;</para>
58 </listitem>
59 <listitem>
60 <para>Estimated disk space required: &python-buildsize;</para>
61 </listitem>
62 <listitem>
63 <para>Estimated build time: &python-time;</para>
64 </listitem>
65 </itemizedlist>
66
67 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
[1970f00]68
69 <bridgehead renderas="sect4">Required Patch</bridgehead>
[83f69e5d]70 <itemizedlist spacing='compact'>
71 <listitem>
[1970f00]72 <para><ulink
[2f83800]73 url="&patch-root;/Python-&Python-version;-bdb_4.8-1.patch"/></para>
[83f69e5d]74 </listitem>
75 </itemizedlist>
76
[2f83800]77 <!-- <bridgehead renderas="sect4">Optional Patch</bridgehead>
[f4031b6c]78 <itemizedlist spacing='compact'>
79 <listitem>
80 <para><ulink
81 url="&patch-root;/Python-&Python-version;-testing-1.patch"/></para>
82 </listitem>
[879d269]83 </itemizedlist> -->
[f4031b6c]84
[1970f00]85 <itemizedlist spacing='compact'>
[3a94882]86 <title>Optional HTML Documentation</title>
[1970f00]87 <listitem>
[3a94882]88 <para>Download (HTTP): <ulink url="&pythonhtmldoc-download-http;"/></para>
89 </listitem>
90 <listitem>
91 <para>Download MD5 sum: &pythonhtmldoc-md5sum;</para>
92 </listitem>
93 <listitem>
94 <para>Download size: &pythonhtmldoc-size;</para>
[1970f00]95 </listitem>
96 </itemizedlist>
97
[83f69e5d]98 <bridgehead renderas="sect3">Python Dependencies</bridgehead>
99
100 <bridgehead renderas="sect4">Optional</bridgehead>
[879d269]101 <para role="optional"><xref linkend="pth"/>,
102 <xref linkend="gcc"/> (install JAVA for the
103 <filename class="libraryfile">libffi</filename> library) or
104 <ulink url="http://sourceware.org/libffi/">libffi</ulink>, and
105 <ulink url="http://www.bluez.org/">BlueZ</ulink></para>
[1970f00]106
107 <bridgehead renderas="sect4">Optional
108 (to create package-specific support modules)</bridgehead>
[256ee72c]109 <para role="optional"><xref linkend="openssl"/>,
[de7f20e]110 <xref linkend="tk"/>,
111 <xref linkend="db"/>, and
112 <!-- <xref linkend="gdbm"/>, and -->
[e2a0e91]113 <xref linkend="sqlite"/></para>
[83f69e5d]114
[ce33273]115 <para>Note that there is a circular dependency with the
116 <application>Tk</application> package as it requires Xorg to be installed
117 but parts of Xorg depend on <application>Python</application>.</para>
118
[1039de3]119 <para condition="html" role="usernotes">User Notes:
[6c42d4e]120 <ulink url="&blfs-wiki;/Python"/></para>
[1039de3]121
[83f69e5d]122 </sect2>
123
124 <sect2 role="installation">
125 <title>Installation of Python</title>
126
127 <para>Install <application>Python</application> by running the following
128 commands:</para>
129
[879d269]130<screen><userinput>sed -i "s/ndbm_libs = \[\]/ndbm_libs = ['gdbm', 'gdbm_compat']/" \
131 setup.py &amp;&amp;
[2f83800]132patch -Np1 -i ../Python-&Python-version;-bdb_4.8-1.patch &amp;&amp;
[879d269]133
[52d29f7]134./configure --prefix=/usr --enable-shared &amp;&amp;
[83f69e5d]135make</userinput></screen>
136
[1970f00]137 <para>To test the results, issue: <command>make test</command>. Note that
138 if you have an existing <application>Python</application> installation
139 which includes the <application>PyXML</application> module, the tests could
140 produce a segmentation fault.</para>
[83f69e5d]141
142 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
143
[2f83800]144<screen role="root"><userinput>make install &amp;&amp;
145chmod -v 755 /usr/lib/libpython2.6.so.1.0</userinput></screen>
[83f69e5d]146
[1970f00]147 <para>There is no documentation installed using the instructions above.
[f4031b6c]148 See the <filename>Doc/README.txt</filename> file in the source
149 distribution for instructions on how to create the html. Alternatively,
150 you can download preformatted documentation from <ulink
151 url="http://docs.python.org/download.html"/>.</para>
[1970f00]152
[8cebf00]153 <para>In order to use the <command>help ('name_string')</command> feature
154 of the <command>python</command> interpreter with some statements and
155 keywords, you must download (or create) the optional HTML documentation
156 and install it. If you downloaded the HTML docs, issue the following
157 commands as the
[1970f00]158 <systemitem class="username">root</systemitem> user:</para>
159
160<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/Python-&Python-version;/html &amp;&amp;
161tar --strip-components=1 \
[cff8f9e]162 --no-same-owner \
163 --no-same-permissions \
[1970f00]164 -C /usr/share/doc/Python-&Python-version;/html \
[d7e4082]165 -xvf ../python-&python-majorver;-docs-html.tar.bz2</userinput></screen>
[1970f00]166
[879d269]167 </sect2>
168
169 <sect2 role="commands">
170 <title>Command Explanations</title>
171
172 <para><command>sed -i "s/ndbm_libs = ..." setup.py</command>: This command
173 is used to fix a build problem with the <application>GDBM</application>
174 library.</para>
175
176 </sect2>
177
178 <sect2 role="configuration">
179 <title>Configuring Python</title>
180
[1970f00]181 <para>In order for <command>python</command> to find the installed
182 documentation, you must add the following environment variable to
183 individual user's or the system's profile:</para>
184
185 <screen role="root"><userinput>export PYTHONDOCS=/usr/share/doc/Python-&Python-version;/html</userinput></screen>
[83f69e5d]186
187 </sect2>
188
189 <sect2 role="content">
190 <title>Contents</title>
191
192 <segmentedlist>
193 <segtitle>Installed Programs</segtitle>
194 <segtitle>Installed Libraries</segtitle>
195 <segtitle>Installed Directories</segtitle>
196
197 <seglistitem>
[879d269]198 <seg>2to3, pydoc, python, python-config, python&python-majorver;,
199 python&python-majorver;-config, smtpd.py, and optionally if
[83f69e5d]200 <application>Tk</application> is installed, idle</seg>
[1970f00]201 <seg>libpython&python-majorver;.so and numerous modules installed in
202 /usr/lib/python&python-majorver;/lib-dynload</seg>
203 <seg>/usr/include/python&python-majorver;,
204 /usr/lib/python&python-majorver;, and
[fe2cf26]205 /usr/share/doc/python-&Python-version;</seg>
[83f69e5d]206 </seglistitem>
207 </segmentedlist>
208
209 <variablelist>
210 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
211 <?dbfo list-presentation="list"?>
212 <?dbhtml list-presentation="table"?>
213
214 <varlistentry id="idle">
215 <term><command>idle</command></term>
216 <listitem>
[7cd76d62]217 <para>is a wrapper script that opens a
[83f69e5d]218 <application>Python</application> aware GUI editor.</para>
219 <indexterm zone="python idle">
220 <primary sortas="b-idle">idle</primary>
221 </indexterm>
222 </listitem>
223 </varlistentry>
224
225 <varlistentry id="pydoc">
226 <term><command>pydoc</command></term>
227 <listitem>
[7cd76d62]228 <para>is the <application>Python</application> documentation
[83f69e5d]229 tool.</para>
230 <indexterm zone="python pydoc">
231 <primary sortas="b-pydoc">pydoc</primary>
232 </indexterm>
233 </listitem>
234 </varlistentry>
235
236 <varlistentry id="python-prog">
237 <term><command>python</command></term>
238 <listitem>
[7cd76d62]239 <para>is an interpreted, interactive, object-oriented programming
[83f69e5d]240 language.</para>
241 <indexterm zone="python python-prog">
242 <primary sortas="b-python">python</primary>
243 </indexterm>
244 </listitem>
245 </varlistentry>
246
[f67f5387]247 <varlistentry id="python-ver">
[1970f00]248 <term><command>python&python-majorver;</command></term>
[83f69e5d]249 <listitem>
[0619e6d]250 <para>is a version-specific name for the <command>python</command>
[83f69e5d]251 program.</para>
[f67f5387]252 <indexterm zone="python python-ver">
[1970f00]253 <primary sortas="b-python&python-majorver;">python&python-majorver;</primary>
[83f69e5d]254 </indexterm>
255 </listitem>
256 </varlistentry>
257
258 <varlistentry id="smtpd.py">
259 <term><command>smtpd.py</command></term>
260 <listitem>
[7cd76d62]261 <para>is an SMTP proxy implemented in
[83f69e5d]262 <application>Python</application>.</para>
263 <indexterm zone="python smtpd.py">
264 <primary sortas="b-smtpd.py">smtpd.py</primary>
265 </indexterm>
266 </listitem>
267 </varlistentry>
268
269 </variablelist>
270
271 </sect2>
[f45b1953]272
273</sect1>
Note: See TracBrowser for help on using the repository browser.