No meu caso, o arquivo ~/.gdbinit
tinha uma linha:
sys.path.insert(0, '/usr/share/gcc-4.8/python/')
Acontece que mudá-lo para: (4.8- > 5)
sys.path.insert(0, '/usr/share/gcc-5/python/')
ajudou.
Eu depurei códigos C ++ usando gdb
no Ubuntu 14.04. Quando eu passar um contêiner stl
para o comando print
, ele costumava imprimir o conteúdo do contêiner. Mas então eu atualizei para o Ubuntu 16.04 LTS uma semana atrás. Agora essas impressoras bonitas não estão funcionando. Quando eu os imprimo, recebo a saída do contêiner bruto que você obtém quando não tem impressoras python instaladas.
Esse cara també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 eu imprimo info pretty-printer em gdb
, eu obtenho uma lista de stl
printers, então eu sei que eles estão registrados. No entanto, meu gdb
não imprime a variável stl::list
. Eu habilitei pretty-printer
, ajustei a impressão consideravelmente.
Minha versão do gcc é 5.4 e a versão do gdb é 7.11.1. Ambas foram instaladas junto com o Ubuntu 16.04. Eu não os construí manualmente. Então, qualquer coisa óbvia que eu esteja sentindo falta?
No meu caso, o arquivo ~/.gdbinit
tinha uma linha:
sys.path.insert(0, '/usr/share/gcc-4.8/python/')
Acontece que mudá-lo para: (4.8- > 5)
sys.path.insert(0, '/usr/share/gcc-5/python/')
ajudou.