2010-08-13 5 views
2

Mon installation de Python (2.6) sur quelques serveurs a été compilé sans support de curses dont j'ai besoin maintenant, bien que libncurses5 soit installé sur les serveurs, Python n'a pas compilé les bindings pour cela quand je "importation malédictions" Je reçois:Python ne peut pas compiler le module _curses sur Debian Lenny

"ImportError: No module named _curses" 

mon/lib/dir a les fichiers suivants: et les liens symboliques

lrwxrwxrwx 1 root root 17 2010-02-13 05:50 /lib/libncurses.so.5 -> libncurses.so.5.7 
-rw-r--r-- 1 root root 251K 2008-12-14 22:31 /lib/libncurses.so.5.7 
lrwxrwxrwx 1 root root 18 2010-02-13 05:50 /lib/libncursesw.so.5 -> libncursesw.so.5.7 
-rw-r--r-- 1 root root 299K 2008-12-14 22:31 /lib/libncursesw.so.5.7 

et/lib64/a:

lrwxrwxrwx 1 root root 20 2010-08-13 12:26 /lib64/libncurses.so -> /lib/libncurses.so.5 
lrwxrwxrwx 1 root root 17 2010-02-13 05:50 /lib64/libncurses.so.5 -> libncurses.so.5.7 
-rw-r--r-- 1 root root 251K 2008-12-14 22:31 /lib64/libncurses.so.5.7 
lrwxrwxrwx 1 root root 18 2010-02-13 05:50 /lib64/libncursesw.so.5 -> libncursesw.so.5.7 
-rw-r--r-- 1 root root 299K 2008-12-14 22:31 /lib64/libncursesw.so.5.7 

/usr/lib64 et/usr/lib ont tous deux avoir:

lrwxrwxrwx 1 root root 20 2010-08-13 12:20 /usr/lib64/libncurses.so -> /lib/libncurses.so.5 

Lorsque je tente de python à nouveau 'faire', je reviens à la fin de l'avertissement suivant:

Failed to find the necessary bits to build these modules: 
_curses_panel  _tkinter   bsddb185   
bz2    dl     gdbm    
imageop   readline   sunaudiodev  
To find the necessary bits, look in setup.py in detect_modules() for the module's name. 

Failed to build these modules: 
    _curses 

Que dois-je faire pour recompiler Python avec le support de curses? Qu'est-ce que j'oublie ici?

Merci!

Répondre

1

Je ne sais pas laquelle de ces actions a résolu mon problème, mais l'une d'entre elles l'a fait. J'ai installé libncurses5-dev et libreadline5-dev, recompilé python et réinstallé (make/make install). Huzza

4

Oui, c'est vrai. L'installation de libncurses5-dev et l'exécution de 'make' et 'make install' sur l'installation python ont fait l'affaire. J'avais d'abord rencontré l'erreur _curses en essayant d'installer et de lancer bpython sur mon installation python personnalisée.

1

BTW, sur CentOS 6.4 64 bits, vous avez besoin de toutes ces bibliothèques de développement pour compiler Python 2.7.6:

yum install -y zlib-devel openssl-devel sqlite-devel bzip2-devel \ 
       ncurses-devel readline-devel gdbm-devel db4-devel tk-devel 

Après yum install ceux, exécutez make et il y a quatre modules gauche:

Python construire fini, mais les bits nécessaires pour construire ces modules ont pas été trouvés:

bsddb185 dl imageop sunaudiodev

Pour trouver les bits nécessaires, regardez dans setup.py dans detect_modules() pour le nom du module.

Ce sont obsolètes, selon this blog post:

sunaudiodev est pour les plates-formes Sun est, dl pour les plateformes 32bits, imageop est dépréciée et bsddb185 est en situation irrégulière.

Questions connexes