2. Використання Python на платформах Unix¶
2.1. Отримання та встановлення останньої версії Python¶
2.1.1. На 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 compile the latest version of Python from source.
In the event that the latest version of Python doesn’t come preinstalled and isn’t in the repositories as well, you can make packages for your own distro. Have a look at the following links:
Дивись також
- https://www.debian.org/doc/manuals/maint-guide/first.en.html
для користувачів Debian
- https://en.opensuse.org/Portal:Packaging
для користувачів OpenSuse
- https://docs.fedoraproject.org/en-US/package-maintainers/Packaging_Tutorial_GNU_Hello/
для користувачів Fedora
- https://slackbook.org/html/package-management-making-packages.html
для користувачів Slackware
2.1.2. На FreeBSD і OpenBSD¶
Користувачі FreeBSD, щоб додати пакет, використовуйте:
pkg install python3
Користувачі OpenBSD, щоб додати пакет, використовуйте:
pkg_add -r python pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/<insert your architecture here>/python-<version>.tgz
Наприклад, користувачі i386 отримують версію Python 2.5.1 за допомогою:
pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz
2.2. Створення Python¶
If you want to compile CPython yourself, first thing you should do is get the source. You can download either the latest release’s source or just grab a fresh clone. (If you want to contribute patches, you will need a clone.)
Процес збирання складається зі звичайних команд:
./configure
make
make install
Параметри конфігурації і застереження для конкретних платформ Unix детально задокументовані у файлі README.rst у корені дерева вихідних кодів Python.
Попередження
make install
може перезаписати або маскувати двійковий файл python3
. Таким чином, make altinstall
рекомендується замість make install
, оскільки він встановлює лише exec_prefix/bin/pythonversion
.
2.4. Різне¶
Щоб легко використовувати сценарії Python в Unix, вам потрібно зробити їх виконуваними, напр. з
$ chmod +x script
і помістіть відповідний рядок Shebang у верхній частині сценарію. Зазвичай хороший вибір:
#!/usr/bin/env python3
який шукає інтерпретатор Python у всьому PATH
. Однак деякі Unix можуть не мати команди env, тому вам може знадобитися жорстко закодувати /usr/bin/python3
як шлях інтерпретатора.
Щоб використовувати команди оболонки у ваших сценаріях Python, подивіться на модуль subprocess
.
2.5. Спеціальний OpenSSL¶
Щоб використовувати конфігурацію OpenSSL і сховище довіри системи вашого постачальника, знайдіть каталог із файлом
openssl.cnf
або символічним посиланням у/etc
. У більшості дистрибутивів файл знаходиться або в/etc/ssl
, або/etc/pki/tls
. Каталог також має містити файлcert.pem
та/або каталогcerts
.$ find /etc/ -name openssl.cnf -printf "%h\n" /etc/ssl
Завантажте, створіть і встановіть OpenSSL. Переконайтеся, що ви використовуєте
install_sw
, а неinstall
. Цільinstall_sw
не перевизначаєopenssl.cnf
.$ curl -O https://www.openssl.org/source/openssl-VERSION.tar.gz $ tar xzf openssl-VERSION $ pushd openssl-VERSION $ ./config \ --prefix=/usr/local/custom-openssl \ --libdir=lib \ --openssldir=/etc/ssl $ make -j1 depend $ make -j8 $ make install_sw $ popd
Build Python with custom OpenSSL (see the configure
--with-openssl
and--with-openssl-rpath
options)$ pushd python-3.x.x $ ./configure -C \ --with-openssl=/usr/local/custom-openssl \ --with-openssl-rpath=auto \ --prefix=/usr/local/python-3.x.x $ make -j8 $ make altinstall
Примітка
Патчі OpenSSL мають зворотну сумісність ABI. Вам не потрібно перекомпілювати Python, щоб оновити OpenSSL. Досить замінити спеціальну установку OpenSSL на новішу версію.