O python2.7 estará disponível para o 10.04 no futuro?

27

Como o Ubuntu 10.04 é uma versão LTS, ele suportará o python 2.7 como uma versão padrão do mantenedor de pacotes ou pelo menos um pacote python2.7 no futuro?

Como será a última grande versão do python 2.x e pretende permanecer no local por um longo tempo, decidi usá-la. Eu compilei a partir da fonte (depois de construir deps, claro), mas de vez em quando eu encontro pequenos problemas.

É seguro definir meu python 2.7 compilado como padrão, já que existem alguns aplicativos de distribuição que funcionam em python.

    
por crodjer 17.12.2010 / 07:01

5 respostas

16

Não, não é considerado seguro definir o 2.7 como seu interpretador padrão do Python no Lucid . E não acho que seja no futuro.

  • Não há atualizações de versão principais de nenhum software em um único lançamento.

    Portanto, o python2.7 não substituirá o 2.6 como o interpretador padrão. Esse tipo de atualização é feito apenas entre versões, em um - especialmente um LTS - existem apenas as chamadas atualizações de versão estável, ou seja, correções de bugs e atualizações relacionadas à segurança.

No entanto, é perfeitamente seguro usar o python2.7, definindo seu interpretador como #!/usr/bin/python2.7 e fazendo com que os usuários o instalem usando make altinstall no código-fonte python, junto com python2.6

    
por Stefano Palazzo 17.12.2010 / 08:57
41

Tive o mesmo problema com um VPS que não pode ser atualizado para o Maverick (mesmo as novas imagens LTS nem sempre são disponibilizadas a tempo). A resposta de Marius deu certo para me começar, mas deve ser expandido:

Adicione o PPA às suas fontes

Se você estiver na minha situação, o simples conselho de executar add-apt-repository não funcionará para você. Então, vamos fazer isso da maneira antiga:

  1. Abra o arquivo /etc/apt/sources.list (você precisa de privilégios de root; se estiver no shell, isso provavelmente significa executar sudo vim /etc/apt/sources.list ).

  2. Vá até o final do arquivo (se estiver usando vim , alterne para o modo de inserção pressionando i ) e adicione as seguintes linhas:

    deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
    deb-src http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
    
  3. Salve e saia (em vim : type :wq ) e volte para um shell.

  4. Digite o seguinte (você pode encontrar a chave correta no PPA ; é a parte depois da barra em os "detalhes técnicos" - certifique-se de ter o caminho certo:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DB82666C
    
  5. Agora digite o seguinte para atualizar sua lista de fontes:

    sudo apt-get update
    

Instalar e configurar o Python 2.7

  1. Abra um shell no seu servidor e digite o seguinte:

    sudo apt-get install python2.7 python2.7-dev
    
  2. Para obter easy_install funcionando, obtenha o script distribute bootscrap:

    curl -O http://python-distribute.org/distribute_setup.py
    python2.7 distribute_setup.py
    
  3. Por fim, você deseja que pip e virtualenv funcionem se planeja fazer algo sério:

    easy_install-2.7 pip
    pip-2.7 install virtualenv
    

Configurando um virtualenv

  1. Crie a pasta para o seu novo ambiente e abra-a:

    mkdir my_env && cd my_env
    
  2. Crie o próprio ambiente virtual (o ponto indica que o diretório atual é o local do ambiente, substitua-o pelo caminho correto se você pulou a etapa anterior):

    virtualenv --no-site-packages --python=python2.7 .
    
  3. Ative o ambiente. Você notará que o prompt do shell é alterado para refletir o ambiente ativo:

    source bin/activate
    
  4. O que você fizer nesse shell agora usará os scripts na pasta bin do ambiente virtual e nos pacotes Python desse ambiente. Tenha em mente que a opção --no-site-packages significa que você está começando com o conjunto mínimo de pacotes (incluindo pip , no entanto), portanto, é necessário instalar todos os pacotes necessários.

  5. Quando terminar, desative o ambiente (este é um comando reconhecido pelo ambiente ativo):

    deactivate
    

Você também pode instalar pacotes no ambiente virtual passando a opção -E para pip (por exemplo, pip install some-package -E /path/to/virtual/environment para instalar some-package no ambiente virtual no caminho fornecido). Tenha em mente que você terá várias versões diferentes de pip correspondentes às diferentes versões do Python instaladas.

É uma boa idéia usar pip-2.7 se você quiser instalar pacotes para o Python 2.7 ao trabalhar fora de um ambiente virtual (a opção --python=python2.7 que passamos para virtualenv significa que o ambiente virtual usará as versões do Python 2.7 as ferramentas que fornece, para que você não precise se preocupar com isso).

    
por Alan Plum 12.02.2011 / 18:55
10

Há um PPA com o Python 2.7 construído para o Ubuntu 10.04. Pode ser mais seguro / conveniente do que construir a partir da fonte.

    
por Marius Gedminas 20.12.2010 / 03:25
2

Isso resolveu todos os tipos de problemas que eu estava tendo link .

Agora, libpython2.7.so.1.0 está vinculando ao meu python2.7 etc, tudo parece ser mais feliz.

A última peça que eu precisei descobrir foi mod_wsgi installation. Se você simplesmente emitir:

$ apt-get install libapache2-mod-wsgi

Em seguida, isso será compilado para o Python2.6: (

$ ldd /usr/lib/apache2/modules/mod_wsgi.so

libpython2.6.so.1.0 => /usr/lib/libpython2.6.so.1.0 (0x00178000)

Então eu segui as instruções fornecidas pelo Gork-Zope aqui .

Eu finalmente tenho um servidor em funcionamento. Obrigado.

    
por Naoko 27.09.2011 / 17:17
1

Eu não penso assim, uma vez que será necessário alterar muitos dos programas e bibliotecas associadas à versão 10.04. Na verdade, muitos dos trabalhos no Ubuntu são feitos usando uma versão específica do Python. Mudar para python mudaria muitos arquivos do sistema.

Para 10.10 está disponível a partir do synaptic / aptitude apenas instalando o python2.7 (você também pode instalar o 3 e 3.1), mas para o 10.04 não há nenhum trabalho feito para torná-lo 10.04.

10.10 tem o python 2.6 como padrão. Desculpe se a resposta não foi positiva, mas só queria dar uma ideia das mudanças.

EDIT - Alterou o Python 2.7 para o Python 2.6 como padrão, já que foi checado nos comentários abaixo. Obrigado.

    
por Luis Alvarado 17.12.2010 / 08:51