2. Використання Python на платформах Unix¶
2.1. Отримання та встановлення останньої версії Python¶
2.1.1. На Linux¶
Python попередньо встановлено на більшості дистрибутивів Linux і доступний у вигляді пакета на всіх інших. Однак є певні функції, які ви можете використати, але недоступні в пакеті вашого дистрибутива. Ви можете легко скомпілювати останню версію Python із початкового коду.
У випадку, якщо Python не попередньо встановлений і його також немає в репозиторіях, ви можете легко створити пакунки для свого власного дистрибутива. Перегляньте наступні посилання:
Дивись також
- 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.1.3. On OpenSolaris¶
You can get Python from OpenCSW. Various versions
of Python are available and can be installed with e.g. pkgutil -i python27
.
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 на новішу версію.