Instalando o Python 2.7 quebrou “yum”

1

Eu instalei o Python 2.7 e apontei /usr/bin/python para /usr/local/bin/python2.7

Depois de instalar o Python 2.7, recebo a seguinte mensagem de erro toda vez que uso yum

> sudo yum install setuptools
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   No module named yum

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.2 (default, Dec 25 2011, 19:13:04) 
[GCC 4.1.1 20070105 (Red Hat 4.1.1-52)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://wiki.linux.duke.edu/YumFaq

Como obtenho o yum trabalhando com o Python 2.7 no CentOS?

    
por user965363 26.12.2011 / 05:09

5 respostas

9

Você pode editar a chamada do yum (/ usr / bin / yum) para o python como:

#! / usr / bin / python2.4

Faça um backup primeiro; -)

    
por 29.03.2013 / 21:04
4

Simplesmente - não aponte / usr / bin / python para nenhum outro python. Em vez disso, se você quiser usar python2.7 apenas modifique seu caminho para colocar / usr / local / bin primeiro.

Em geral, você não deve tocar em nada em / usr / {bin, lib ...} diferente de / usr / local

    
por 26.12.2011 / 21:46
4

por isso que você fez a instalação para uma nova versão do python que a que já estava instalada no seu sistema operacional e de que o yum depende.

simplesmente você precisa editar usr/bin/yum e alterar o shebang para a mesma versão instalada em sua distribuição. mudar

#!/usr/bin/python

para uma versão específica

#!/usr/bin/python2.6 (in my os)
    
por 16.03.2014 / 19:32
1

Você pode criar o python2.7 (como descrito no link ) em vez de usar o yum para instalá-lo . Isso envolve o download da fonte e seguir as instruções encontradas no README. Quando você chegar ao ponto em que normalmente executaria 'make install', você quer executar 'make altinstall'. Isso deixará o python padrão no lugar e dará um comando python2.7 em / usr / local / bin /.

A partir do Python 2.7 README: "Nos sistemas Unix e Mac, se você pretende instalar várias versões do Python usando o mesmo prefixo de instalação (argumento --prefix para o configure script) você deve tomar cuidado para que seu executável python principal não seja sobrescrito pela instalação de uma versão diferente. Todos os arquivos e diretórios instalados usando "make altinstall" contêm os principais e versão e pode, assim, viver lado a lado. "make install" também cria $ {prefixo} / bin / python que se refere a $ {prefixo} /bin/pythonX.Y. Se você pretende para instalar várias versões usando o mesmo prefixo você deve decidir qual versão (se houver) é a sua versão "primária". Instale essa versão usando "make install". Instale todas as outras versões usando "make altinstall".

Por exemplo, se você deseja instalar o Python 2.5, 2.6 e 3.0 com o 2.6 sendo a versão principal, você executaria "make install" na sua versão 2.6 diretório e "make altinstall" nos outros. "

    
por 29.03.2013 / 23:53
1

Você não consegue trabalhar com o Python 2.7. Em vez disso, você precisa ter o 2.7 instalado também, mas deixe o 2.4 onde ele é para evitar quebrar, por exemplo. yum.

Alfred Chiesa escreveu um guia que percorre este processo . Confira e veja se isso pode ajudá-lo a conseguir o que você precisa.

    
por 26.12.2011 / 05:40