diff options
Diffstat (limited to 'Doc/using/unix.rst')
-rw-r--r-- | Doc/using/unix.rst | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/Doc/using/unix.rst b/Doc/using/unix.rst new file mode 100644 index 0000000..7b69bd9 --- /dev/null +++ b/Doc/using/unix.rst @@ -0,0 +1,145 @@ +.. highlightlang:: none + +.. _using-on-windows: + +******************************** + Using Python on Unix platforms +******************************** + +.. sectionauthor:: Shriphani Palakodety + + +Getting and installing the latest version of Python +=================================================== + +On Linux +-------- + +Python comes preinstalled on most Linux distributions, and is available as a +package on all others. However there are certain features you might want to use +that are not available on your distro's package. You can easily compile the +latest version of Python from source. + +In the event Python doesn't come preinstalled and isn't in the repositories as +well, you can easily make packages for your own distro. Have a look at the +following links: + +.. seealso:: + + http://www.linux.com/articles/60383 + for Debian users + http://linuxmafia.com/pub/linux/suse-linux-internals/chapter35.html + for OpenSuse users + http://docs.fedoraproject.org/drafts/rpm-guide-en/ch-creating-rpms.html + for Fedora users + http://www.slackbook.org/html/package-management-making-packages.html + for Slackware users + + +On FreeBSD and OpenBSD +---------------------- + +* FreeBSD users, to add the package use:: + + pkg_add -r python + +* OpenBSD users use:: + + pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/<insert your architecture here>/python-<version>.tgz + + For example i386 users get the 2.5.1 version of Python using:: + + pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz + + +On OpenSolaris +-------------- + +To install the newest Python versions on OpenSolaris, install blastwave +(http://www.blastwave.org/howto.html) and type "pkg_get -i python" at the +prompt. + + +Building Python +=============== + +If you want to compile CPython yourself, first thing you should do is get the +`source <http://python.org/download/source/>`_. You can download either the +latest release's source or just grab a fresh `checkout +<http://www.python.org/dev/faq/#how-do-i-get-a-checkout-of-the-repository-read-only-and-read-write>`_. + +The build process consists the usual :: + + ./configure + make + make install + +invocations. Configuration options and caveats for specific Unix platforms are +extensively documented in the :file:`README` file in the root of the Python +source tree. + + +Python-related paths and files +============================== + +These are subject to difference depending on local installation conventions; +:envvar:`prefix` (``${prefix}``) and :envvar:`exec_prefix` (``${exec_prefix}``) +are installation-dependent and should be interpreted as for GNU software; they +may be the same. + +For example, on most Linux systems, the default for both is :file:`/usr`. + ++-----------------------------------------------+------------------------------------------+ +| File/directory | Meaning | ++===============================================+==========================================+ +| :file:`{exec_prefix}/bin/python` | Recommended location of the interpreter. | ++-----------------------------------------------+------------------------------------------+ +| :file:`{prefix}/lib/python{version}`, | Recommended locations of the directories | +| :file:`{exec_prefix}/lib/python{version}` | containing the standard modules. | ++-----------------------------------------------+------------------------------------------+ +| :file:`{prefix}/include/python{version}`, | Recommended locations of the directories | +| :file:`{exec_prefix}/include/python{version}` | containing the include files needed for | +| | developing Python extensions and | +| | embedding the interpreter. | ++-----------------------------------------------+------------------------------------------+ +| :file:`~/.pythonrc.py` | User-specific initialization file loaded | +| | by the user module; not used by default | +| | or by most applications. | ++-----------------------------------------------+------------------------------------------+ + + +Miscellaneous +============= + +To easily use Python scripts on Unix, you need to make them executable, +e.g. with :: + + $ chmod +x script + +and put an appropriate Shebang line at the top of the script. A good choice is +usually :: + + #!/usr/bin/env python + +which searches for the Python interpreter in the whole :envvar:`PATH`. However, +some Unices may not have the :program:`env` command, so you may need to hardcode +``/usr/bin/python`` as the interpreter path. + +To use shell commands in your python scripts, look at the :mod:`subprocess` module. + + +Editors +======= + +Vim and Emacs are excellent editors which support Python very well. For more +information on how to code in python in these editors, look at: + +http://www.vim.org/scripts/script.php?script_id=790 +http://sourceforge.net/projects/python-mode + +Geany is an excellent IDE with support for a lot of languages. For more +information, read: http://geany.uvena.de/ + +Komodo edit is another extremely good IDE. It also has support for a lot of +languages. For more information, read: +http://www.activestate.com/store/productdetail.aspx?prdGuid=20f4ed15-6684-4118-a78b-d37ff4058c5f |