5 votes

Gdb utilise python incorrect

Lorsque je lance gdb (sur Ubuntu 12.04 LTS), il plante immédiatement avec la sortie suivante :

Traceback (most recent call last):
  File "/usr/lib/python2.7/site.py", line 562, in 
    main()
  File "/usr/lib/python2.7/site.py", line 544, in main
    known_paths = addusersitepackages(known_paths)
  File "/usr/lib/python2.7/site.py", line 271, in addusersitepackages
    user_site = getusersitepackages()
  File "/usr/lib/python2.7/site.py", line 246, in getusersitepackages
    user_base = getuserbase() # this will also set USER_BASE
  File "/usr/lib/python2.7/site.py", line 236, in getuserbase
    USER_BASE = get_config_var('userbase')
  File "/usr/lib/python2.7/sysconfig.py", line 577, in get_config_var
    return get_config_vars().get(name)
  File "/usr/lib/python2.7/sysconfig.py", line 476, in get_config_vars
    _init_posix(_CONFIG_VARS)
  File "/usr/lib/python2.7/sysconfig.py", line 337, in _init_posix
    makefile = _get_makefile_filename()
  File "/usr/lib/python2.7/sysconfig.py", line 331, in _get_makefile_filename
    return os.path.join(get_path('platstdlib').replace("/usr/local","/usr",1), "config" + (sys.pydebug and "_d" or ""), "Makefile")
AttributeError: 'module' object has no attribute 'pydebug'

À partir de ces deux questions similaires

gdb cannot run due to python error

https://stackoverflow.com/questions/10641201/attributeerror-module-object-has-no-attribute-pydebug

il semble que gdb utilise l'installation Python incorrecte? Comment savoir quel python gdb devrait utiliser et où définir celui qui est utilisé?

J'ai un python dans /usr/lib/python2.7 et un dans /opt/ros/fuerte/lib/python2.7.

J'ai déjà utilisé gdb avec succès sur cette machine.

Merci!

4voto

robertdi Points 143

Vous ne pouvez pas configurer lequel Python il doit utiliser sans le construire à partir des sources; tout ce que vous pouvez faire est d'exécuter quelque chose comme:

readelf -d $(which gdb) | grep python

pour savoir quel Python il utilise.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X