Eu depurei códigos C++ usando gdb
o Ubuntu 14.04. Quando passo um stl
container para o print
comando, ele imprime o conteúdo do container. Mas então atualizei para o Ubuntu 16.04 LTS há uma semana. Agora essas lindas impressoras não estão funcionando. Quando eu os imprimo, recebo a saída bruta do contêiner que você obtém quando não tem impressoras python instaladas.
Esse caratambém tem o mesmo problema.
Eu tenho libstdcxx/v6/python.py
no meu sistema. Eu também tenho libstdc++.so.6.0.21-gdb.py
na pasta de carregamento automático. Quando imprimo informações de impressora bonita gdb
, recebo uma lista de stl
impressoras, então sei que elas estão registradas. No entanto, my gdb
não imprime stl::list
variável. eu habilitei pretty-printer
, configurei a impressão bonita.
Minha versão gcc é 5.4 e a versão gdb é 7.11.1. Ambas foram instaladas junto com o Ubuntu 16.04. Eu não os construí manualmente. Então, alguma coisa óbvia que estou perdendo?
Responder1
No meu caso, o ~/.gdbinit
arquivo tinha uma linha:
sys.path.insert(0, '/usr/share/gcc-4.8/python/')
Acontece que mudando para: (4.8->5)
sys.path.insert(0, '/usr/share/gcc-5/python/')
ajudou.