2. Utilizando Python em plataformas Unix¶
2.1. Obtendo e instalando a versão mais recente do Python¶
2.1.1. No Linux¶
O Python vem pré-instalado na maioria das distribuições Linux e está disponível como um pacote em todos as outras. No entanto, existem certos recursos que podemos querer utilizar e que não estão disponíveis no pacote da sua distro. Poderás compilar facilmente a versão mais recente do Python desde a origem.
Nas situações em que o Python não vier pré-instalado e também não estiver nos repositórios, poderás facilmente gerar os pacotes para a sua distro. Veja os seguintes links:
Ver também
- https://www.debian.org/doc/manuals/maint-guide/first.en.html
para usuários Debian
- https://en.opensuse.org/Portal:Packaging
para usuários OpenSuse
- https://docs-old.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html
para usuários Fedora
- http://www.slackbook.org/html/package-management-making-packages.html
para usuários do Slackware
2.1.2. On FreeBSD e OpenBSD¶
usuários do FreeBSD, para adicionar a utilização do pacote utilize:
pkg install python3
Usuários do OpenBSD, para adicionar pacotes use:
pkg_add -r python pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/<insert your architecture here>/python-<version>.tgz
Por exemplo, usuários i386 podem pegar a versão 2.5.1 do Python usando o comando:
pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz
2.1.3. No OpenSolaris¶
Podes baixar o Python desde OpenCSW. Várias versões do Python estão disponíveis e poderás instala-las, por exemplo pkgutil -i python27
.
2.2. Compilando o Python¶
Se você quer compilar o CPython, a primeira coisa que você precisa fazer é baixar o código-fonte. Você pode baixar a última versão ou usar o git para fazer um clone. (Se você pretende contribuir modificações, você vai precisar um “clone”.)
O processo de compilação consiste nos comandos usuais:
./configure
make
make install
Configuration options and caveats for specific Unix platforms are extensively documented in the README.rst file in the root of the Python source tree.
Aviso
make install
pode sobrescrever ou mascarar o arquivo binário python3
. make altinstall
é, portanto, recomendado ao invés de make install
uma vez que o mesmo apenas instala o arquivo exec_prefix/bin/pythonversion
.
2.4. Diversos¶
Para usar facilmente scripts Python no Unix, você precisa torná-los executáveis, por exemplo, com
$ chmod +x script
e colocar uma linha Shebang apropriada no topo do script. Uma boa escolha normalmente é
#!/usr/bin/env python3
que procura o interpretador do Python no conjunto PATH
. No entanto, alguns sistemas Unix podem não ter o comando env, então você pode precisar codificar /usr/bin/python3
como o caminho do interpretador.
Para usar comandos Shell em seus scripts Python, veja o módulo subprocess
.
2.5. Custom OpenSSL¶
To use your vendor’s OpenSSL configuration and system trust store, locate the directory with
openssl.cnf
file or symlink in/etc
. On most distribution the file is either in/etc/ssl
or/etc/pki/tls
. The directory should also contain acert.pem
file and/or acerts
directory.$ find /etc/ -name openssl.cnf -printf "%h\n" /etc/ssl
Download, build, and install OpenSSL. Make sure you use
install_sw
and notinstall
. Theinstall_sw
target does not overrideopenssl.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
Nota
Patch releases of OpenSSL have a backwards compatible ABI. You don’t need to recompile Python to update OpenSSL. It’s sufficient to replace the custom OpenSSL installation with a newer version.