Como descobrir os nomes dos pacotes rpm correspondentes desta saída de script de construção python?

0

Eu estou tentando compilar o python 2.6.8 no Redhat 5 linux box.

No final da compilação, recebi essas mensagens;

Failed to find the necessary bits to build these modules:
_bsddb             _curses            _curses_panel
_hashlib           _sqlite3           _ssl
_tkinter           bsddb185           bz2
dbm                dl                 gdbm
imageop            readline           sunaudiodev

Com base nos nomes acima, usei yum search e encontrei alguns pacotes rpm para preencher as dependências

ncurses

ncurses-5.5-24.20060715.x86_64 ncurses-devel-5.5-24.20060715.i386

gdbm gdbm-1.8.0-26.2.1.x86_64

readline readline-5.1-3.el5.x86_64

b2 bzip2-1.0.3-4.el5_2.x86_64 bzip2-devel-1.0.3-4.el5_2.x86_64

No entanto, não posso ter sorte com o resto deles.

Existe alguma técnica para descobrir as dependências? Existe algum recurso da web disponível para procurar os pacotes rpm?

    
por Anthony Kong 04.06.2013 / 03:33

2 respostas

1

  1. Use o comando deplist para listar as dependências de um pacote:

yum deplist <package>

2. Ou use a ferramenta repoquery do pacote yum-utils :

repoquery --requires <package>

  • Página de perfil da Yum: link

  • Página man do Repoquery: link

por 04.06.2013 / 04:08
1

RPMfind será sua melhor aposta em busca de RPMs. Certifique-se de obter as versões -devel , bem como o pacote principal, pois o compilador estará procurando pelos cabeçalhos e / ou bibliotecas que vêm nesses pacotes. Eles têm RPMs para o Python 2.6.8 em i586 e plataformas x86_64 , originalmente construídas para o OpenSUSE, mas potencialmente úteis para você.

No que diz respeito ao Python, a menos que você tenha uma necessidade específica para o 2.6, recomendaria altamente o uso das versões mais atualizadas, totalmente corrigidas por bugs e repletas de recursos. 2.7.5 é a versão atual da série 2.x de manutenção e 3.3.2 é a versão mais recente do Python 3. Para encontrar informações sobre os módulos que falharam na criação, consulte o Python-2.7.5/Modules directory (ou qualquer versão que você tenha criado) e procure por .c files relacionados ao nome do módulo. Por exemplo, no meu diretório Python-3.3.2/Modules , eu tenho _tkinter.c , que diz logo no topo "Apenas Tcl / Tk 8.3.1 e posterior são suportados" então agora eu sei quais nomes de pacotes e versões procurar.

Boa sorte!

    
por 04.06.2013 / 04:08

Tags