##// END OF EJS Templates
Correct links to twisted.
Thomas -
r4480:a461e270 0.10.2
parent child Browse files
Show More
@@ -1,300 +1,300 b''
1 1 Overview
2 2 ========
3 3
4 4 This document describes the steps required to install IPython. IPython is
5 5 organized into a number of subpackages, each of which has its own dependencies.
6 6 All of the subpackages come with IPython, so you don't need to download and
7 7 install them separately. However, to use a given subpackage, you will need to
8 8 install all of its dependencies.
9 9
10 10
11 11 Please let us know if you have problems installing IPython or any of its
12 12 dependencies. Officially, IPython requires Python version 2.5 or 2.6. We
13 13 have *not* yet started to port IPython to Python 3.0.
14 14
15 15 .. warning::
16 16
17 17 Officially, IPython supports Python versions 2.5 and 2.6.
18 18
19 19 IPython 0.10 has only been well tested with Python 2.5 and 2.6. Parts of
20 20 it may work with Python 2.4, but we do not officially support Python 2.4
21 21 anymore. If you need to use 2.4, you can still run IPython 0.9.
22 22
23 23 Some of the installation approaches use the :mod:`setuptools` package and its
24 24 :command:`easy_install` command line program. In many scenarios, this provides
25 25 the most simple method of installing IPython and its dependencies. It is not
26 26 required though. More information about :mod:`setuptools` can be found on its
27 27 website.
28 28
29 29 More general information about installing Python packages can be found in
30 30 Python's documentation at http://www.python.org/doc/.
31 31
32 32 Quickstart
33 33 ==========
34 34
35 35 If you have :mod:`setuptools` installed and you are on OS X or Linux (not
36 36 Windows), the following will download and install IPython *and* the main
37 37 optional dependencies::
38 38
39 39 $ easy_install ipython[kernel,security,test]
40 40
41 41 This will get Twisted, zope.interface and Foolscap, which are needed for
42 42 IPython's parallel computing features as well as the nose package, which will
43 43 enable you to run IPython's test suite. To run IPython's test suite, use the
44 44 :command:`iptest` command::
45 45
46 46 $ iptest
47 47
48 48 Read on for more specific details and instructions for Windows.
49 49
50 50 Installing IPython itself
51 51 =========================
52 52
53 53 Given a properly built Python, the basic interactive IPython shell will work
54 54 with no external dependencies. However, some Python distributions
55 55 (particularly on Windows and OS X), don't come with a working :mod:`readline`
56 56 module. The IPython shell will work without :mod:`readline`, but will lack
57 57 many features that users depend on, such as tab completion and command line
58 58 editing. See below for details of how to make sure you have a working
59 59 :mod:`readline`.
60 60
61 61 Installation using easy_install
62 62 -------------------------------
63 63
64 64 If you have :mod:`setuptools` installed, the easiest way of getting IPython is
65 65 to simple use :command:`easy_install`::
66 66
67 67 $ easy_install ipython
68 68
69 69 That's it.
70 70
71 71 Installation from source
72 72 ------------------------
73 73
74 74 If you don't want to use :command:`easy_install`, or don't have it installed,
75 75 just grab the latest stable build of IPython from `here
76 76 <http://ipython.scipy.org/dist/>`_. Then do the following::
77 77
78 78 $ tar -xzf ipython.tar.gz
79 79 $ cd ipython
80 80 $ python setup.py install
81 81
82 82 If you are installing to a location (like ``/usr/local``) that requires higher
83 83 permissions, you may need to run the last command with :command:`sudo`.
84 84
85 85 Windows
86 86 -------
87 87
88 88 There are a few caveats for Windows users. The main issue is that a basic
89 89 ``python setup.py install`` approach won't create ``.bat`` file or Start Menu
90 90 shortcuts, which most users want. To get an installation with these, you can
91 91 use any of the following alternatives:
92 92
93 93 1. Install using :command:`easy_install`.
94 94
95 95 2. Install using our binary ``.exe`` Windows installer, which can be found at
96 96 `here <http://ipython.scipy.org/dist/>`_
97 97
98 98 3. Install from source, but using :mod:`setuptools` (``python setupegg.py
99 99 install``).
100 100
101 101 IPython by default runs in a termninal window, but the normal terminal
102 102 application supplied by Microsoft Windows is very primitive. You may want to
103 103 download the excellent and free Console_ application instead, which is a far
104 104 superior tool. You can even configure Console to give you by default an
105 105 IPython tab, which is very convenient to create new IPython sessions directly
106 106 from the working terminal.
107 107
108 108 .. _Console: http://sourceforge.net/projects/console
109 109
110 110
111 111 Installing the development version
112 112 ----------------------------------
113 113
114 114 It is also possible to install the development version of IPython from our
115 115 `Bazaar <http://bazaar-vcs.org/>`_ source code repository. To do this you will
116 116 need to have Bazaar installed on your system. Then just do::
117 117
118 118 $ bzr branch lp:ipython
119 119 $ cd ipython
120 120 $ python setup.py install
121 121
122 122 Again, this last step on Windows won't create ``.bat`` files or Start Menu
123 123 shortcuts, so you will have to use one of the other approaches listed above.
124 124
125 125 Some users want to be able to follow the development branch as it changes. If
126 126 you have :mod:`setuptools` installed, this is easy. Simply replace the last
127 127 step by::
128 128
129 129 $ python setupegg.py develop
130 130
131 131 This creates links in the right places and installs the command line script to
132 132 the appropriate places. Then, if you want to update your IPython at any time,
133 133 just do::
134 134
135 135 $ bzr pull
136 136
137 137 Basic optional dependencies
138 138 ===========================
139 139
140 140 There are a number of basic optional dependencies that most users will want to
141 141 get. These are:
142 142
143 143 * readline (for command line editing, tab completion, etc.)
144 144 * nose (to run the IPython test suite)
145 145 * pexpect (to use things like irunner)
146 146
147 147 If you are comfortable installing these things yourself, have at it, otherwise
148 148 read on for more details.
149 149
150 150 readline
151 151 --------
152 152
153 153 In principle, all Python distributions should come with a working
154 154 :mod:`readline` module. But, reality is not quite that simple. There are two
155 155 common situations where you won't have a working :mod:`readline` module:
156 156
157 157 * If you are using the built-in Python on Mac OS X.
158 158
159 159 * If you are running Windows, which doesn't have a :mod:`readline` module.
160 160
161 161 On OS X, the built-in Python doesn't not have :mod:`readline` because of
162 162 license issues. Starting with OS X 10.5 (Leopard), Apple's built-in Python has
163 163 a BSD-licensed not-quite-compatible readline replacement. As of IPython 0.9,
164 164 many of the issues related to the differences between readline and libedit seem
165 165 to have been resolved. While you may find libedit sufficient, we have
166 166 occasional reports of bugs with it and several developers who use OS X as their
167 167 main environment consider libedit unacceptable for productive, regular use with
168 168 IPython.
169 169
170 170 Therefore, we *strongly* recommend that on OS X you get the full
171 171 :mod:`readline` module. We will *not* consider completion/history problems to
172 172 be bugs for IPython if you are using libedit.
173 173
174 174 To get a working :mod:`readline` module, just do (with :mod:`setuptools`
175 175 installed)::
176 176
177 177 $ easy_install readline
178 178
179 179 .. note::
180 180
181 181 Other Python distributions on OS X (such as fink, MacPorts and the official
182 182 python.org binaries) already have readline installed so you likely don't
183 183 have to do this step.
184 184
185 185 If needed, the readline egg can be build and installed from source (see the
186 186 wiki page at http://ipython.scipy.org/moin/InstallationOSXLeopard).
187 187
188 188 On Windows, you will need the PyReadline module. PyReadline is a separate,
189 189 Windows only implementation of readline that uses native Windows calls through
190 190 :mod:`ctypes`. The easiest way of installing PyReadline is you use the binary
191 191 installer available `here <http://ipython.scipy.org/dist/>`_. The :mod:`ctypes`
192 192 module, which comes with Python 2.5 and greater, is required by PyReadline. It
193 193 is available for Python 2.4 at http://python.net/crew/theller/ctypes.
194 194
195 195 nose
196 196 ----
197 197
198 198 To run the IPython test suite you will need the :mod:`nose` package. Nose
199 199 provides a great way of sniffing out and running all of the IPython tests. The
200 200 simplest way of getting nose, is to use :command:`easy_install`::
201 201
202 202 $ easy_install nose
203 203
204 204 Another way of getting this is to do::
205 205
206 206 $ easy_install ipython[test]
207 207
208 208 For more installation options, see the `nose website
209 209 <http://somethingaboutorange.com/mrl/projects/nose/>`_. Once you have nose
210 210 installed, you can run IPython's test suite using the iptest command::
211 211
212 212 $ iptest
213 213
214 214
215 215 pexpect
216 216 -------
217 217
218 218 The `pexpect <http://www.noah.org/wiki/Pexpect>`_ package is used in IPython's
219 219 :command:`irunner` script. On Unix platforms (including OS X), just do::
220 220
221 221 $ easy_install pexpect
222 222
223 223 Windows users are out of luck as pexpect does not run there.
224 224
225 225 Dependencies for IPython.kernel (parallel computing)
226 226 ====================================================
227 227
228 228 The IPython kernel provides a nice architecture for parallel computing. The
229 229 main focus of this architecture is on interactive parallel computing. These
230 230 features require a number of additional packages:
231 231
232 232 * zope.interface (yep, we use interfaces)
233 233 * Twisted (asynchronous networking framework)
234 234 * Foolscap (a nice, secure network protocol)
235 235 * pyOpenSSL (security for network connections)
236 236
237 237 On a Unix style platform (including OS X), if you want to use :mod:`setuptools`, you can just do::
238 238
239 239 $ easy_install ipython[kernel] # the first three
240 240 $ easy_install ipython[security] # pyOpenSSL
241 241
242 242 zope.interface and Twisted
243 243 --------------------------
244 244
245 245 Twisted [Twisted]_ and zope.interface [ZopeInterface]_ are used for networking
246 246 related things. On Unix style platforms (including OS X), the simplest way of
247 247 getting the these is to use :command:`easy_install`::
248 248
249 249 $ easy_install zope.interface
250 250 $ easy_install Twisted
251 251
252 252 Of course, you can also download the source tarballs from the `Twisted website
253 <twistedmatrix.org>`_ and the `zope.interface page at PyPI
253 <http://twistedmatrix.com>`_ and the `zope.interface page at PyPI
254 254 <http://pypi.python.org/pypi/zope.interface>`_ and do the usual ``python
255 255 setup.py install`` if you prefer.
256 256
257 257 Windows is a bit different. For zope.interface and Twisted, simply get the latest binary ``.exe`` installer from the Twisted website. This installer includes both zope.interface and Twisted and should just work.
258 258
259 259 Foolscap
260 260 --------
261 261
262 262 Foolscap [Foolscap]_ uses Twisted to provide a very nice secure RPC protocol that we use to implement our parallel computing features.
263 263
264 264 On all platforms a simple::
265 265
266 266 $ easy_install foolscap
267 267
268 268 should work. You can also download the source tarballs from the `Foolscap
269 269 website <http://foolscap.lothar.com/trac>`_ and do ``python setup.py install``
270 270 if you prefer.
271 271
272 272 pyOpenSSL
273 273 ---------
274 274
275 275 IPython requires an older version of pyOpenSSL [pyOpenSSL]_ (0.6 rather than
276 276 the current 0.7). There are a couple of options for getting this:
277 277
278 278 1. Most Linux distributions have packages for pyOpenSSL.
279 279 2. The built-in Python 2.5 on OS X 10.5 already has it installed.
280 280 3. There are source tarballs on the pyOpenSSL website. On Unix-like
281 281 platforms, these can be built using ``python seutp.py install``.
282 282 4. There is also a binary ``.exe`` Windows installer on the `pyOpenSSL website <http://pyopenssl.sourceforge.net/>`_.
283 283
284 284 Dependencies for IPython.frontend (the IPython GUI)
285 285 ===================================================
286 286
287 287 wxPython
288 288 --------
289 289
290 290 Starting with IPython 0.9, IPython has a new IPython.frontend package that has
291 291 a nice wxPython based IPython GUI. As you would expect, this GUI requires
292 292 wxPython. Most Linux distributions have wxPython packages available and the
293 293 built-in Python on OS X comes with wxPython preinstalled. For Windows, a
294 294 binary installer is available on the `wxPython website
295 295 <http://www.wxpython.org/>`_.
296 296
297 .. [Twisted] Twisted matrix. http://twistedmatrix.org
297 .. [Twisted] Twisted matrix. http://twistedmatrix.com
298 298 .. [ZopeInterface] http://pypi.python.org/pypi/zope.interface
299 299 .. [Foolscap] Foolscap network protocol. http://foolscap.lothar.com/trac
300 300 .. [pyOpenSSL] pyOpenSSL. http://pyopenssl.sourceforge.net
General Comments 0
You need to be logged in to leave comments. Login now