Python-3.11.4

Introdução ao Python 3

O pacote Python 3 contém o ambiente de desenvolvimento Python. Isso é útil para programação orientada a objetos, escrita de conjuntos sequenciais de comandos, prototipagem de aplicativos grandes ou desenvolvimento de aplicativos inteiros.

[Nota]

Nota

O Python 3 foi instalado no LFS. A única razão para reconstruí-lo aqui é se módulos opcionais forem necessários ou para atualizar esse pacote.

Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.0.

[Importante]

Importante

Se atualizar para uma nova versão menor do "Python" 3 (por exemplo, de "Python-3.10.x" para "Python-3.11.0"), [então] você precisará reinstalar quaisquer módulos "Python3" que tiver instalado. Você também deveria reinstalar pacotes que gerem módulos "Python3", incluindo "gobject-introspection-1.76.1", "opencv-4.8.0", "Graphviz-8.1.0" (se o "swig" estiver instalado).

Antes de atualizar, você pode obter uma lista de módulos instalados com pip3 list. A lista pode estar incompleta porque alguns módulos Python não são instalados com pip3, por exemplo o módulo cracklib instalado por CrackLib-2.9.11. Use ls /usr/lib/python3.minor/site-packages para uma lista abrangente.

Os módulos Python originários do LFS também terão que ser reinstalados: flit-core, wheel, meson, MarkupSafe e Jinja2.

Informação do Pacote

  • Transferência (HTTP): https://www.python.org/ftp/python/3.11.4/Python-3.11.4.tar.xz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: fb7f7eae520285788449d569e45b6718

  • Tamanho da transferência: 19 MB

  • Espaço em disco estimado exigido: 282 MB (adicionar 63 MB para testes)

  • Tempo de construção estimado: 1,9 UPC (adicionar 2,8 UPC para testes; ambos usando paralelismo=4)

Transferência Adicional Opcional

Dependências do "Python" 3

Recomendadas

Opcionais

BlueZ-5.68, GDB-13.2 (exigido para alguns testes), Valgrind-3.21.0 e libmpdec

Opcionais (Para Módulos Adicionais)

Base de Dados Berkeley-5.3.28, libnsl-2.0.0 e Tk-8.6.13

Observações de Editor(a): https://wiki.linuxfromscratch.org/blfs/wiki/Python3

Instalação do Python 3

Instale o "Python 3" executando os seguintes comandos:

CXX="/usr/bin/g++"              \
./configure --prefix=/usr        \
            --enable-shared      \
            --with-system-expat  \
            --with-system-ffi    \
            --enable-optimizations &&
make

Para testar o resultado, emita "make test". Alguns testes possivelmente precisem de uma conexão com a Internet. Dois testes, "test_distutils" e "test_embed", são conhecidos por falharem.

Agora, como o(a) usuário(a) "root":

make install

Se atualizar e a documentação tiver sido baixada, [então] opcionalmente instale-a como o(a) usuário(a) "root":

install -v -dm755 /usr/share/doc/python-3.11.4/html

tar --strip-components=1 \
    --no-same-owner       \
    --no-same-permissions \
    -C /usr/share/doc/python-3.11.4/html \
    -xvf ../python-3.11.4-docs-html.tar.bz2

Explicações do Comando

CXX="/usr/bin/g++" ./configure ...: Evite uma mensagem irritante durante a configuração.

--with-system-expat: Essa chave habilita vincular à versão do sistema do "Expat".

--with-system-ffi: Essa chave habilita vincular à versão do sistema da "libffi".

--with-dbmliborder=bdb:gdbm:ndbm: Use essa chave se você desejar construir o módulo "DBM" do "Python" contra "Berkeley DB" em vez de "GDBM".

--enable-optimizations: Essa chave habilita otimizações estáveis, mas caras.

--with-lto: Essa chave opcional habilita "Link Time Optimization" denso. Excepcionalmente, ele cria um "/usr/lib/python3.11/config-3.11-<arch>-linux-gnu/libpython3.11.a" muito maior com um pequeno aumento no tempo para compilar o "Python". Os resultados em tempo de execução não parecem mostrar nenhum benefício advindo de fazer isso.

Configurando o Python 3

Para a finalidade de que "python3" encontre a documentação instalada, crie o seguinte link simbólico independente da versão:

ln -svfn python-3.11.4 /usr/share/doc/python-3

e adicione a seguinte variável de ambiente ao perfil individual do(a) usuário(a) ou ao do sistema:

export PYTHONDOCS=/usr/share/doc/python-3/html

Conteúdo

Aplicativos Instalados: 2to3 (link simbólico) e 2to3-3.11, idle3 (link simbólico) e idle3.11, pip3 (link simbólico) e pip3.11, pydoc3 e pydoc3.11, python3 (link simbólico); python3.11 e python3-config (link simbólico) e python3.11-config
Bibliotecas Instaladas: libpython3.11.so e libpython3.so
Diretórios Instalados: /usr/include/python3.11, /usr/lib/python3.11 e /usr/share/doc/python-3.11.4

Descrições Curtas

idle3

é um conjunto sequencial de comandos envólucros que abrem um editor "GUI" compatível com "Python". Para esse conjunto sequencial de comandos executar, você precisa ter instalado o "Tk" antes do "Python", de forma que o módulo "Tkinter" do "Python" seja construído

pydoc3

é a ferramenta de documentação do "Python"

python3

é uma linguagem de programação interpretada, interativa e orientada a objetos

python3.11

é um nome específico de versão para o aplicativo "python"