Отображение переменных в QtCreator через gdb

Отладчик gdb не показывает содержимое переменной типа std::string

введите сюда описание изображения

При этом если смотреть через gdb в консоле то он все показывает:

 milai@milai:~/projects/test_project/build/bin$ gdb ./test_project 
 GNU gdb (Ubuntu 9.1-0ubuntu1) 9.1
 Copyright (C) 2020 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.
 Type "show copying" and "show warranty" for details.
 This GDB was configured as "x86_64-linux-gnu".
 Type "show configuration" for configuration details.
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 Find the GDB manual and other documentation resources online at:
     <http://www.gnu.org/software/gdb/documentation/>.

 For help, type "help".
 Type "apropos word" to search for commands related to "word"...
 Reading symbols from ./test_project...
 (gdb) list
 1  #include <string>
 2  #include <iostream>
 3  
 4  int main(int argc, char* argv[])
 5  {
 6      const std::string str = "abc";
 7      std::cout << str << std::endl;
 8      return 0;
 9  }
 (gdb) b 7
 Breakpoint 1 at 0x12bb: file /home/milai/projects/test_project/main.cpp, line 7.
 (gdb) r
 Starting program: /home/milai/projects/test_project/build/bin/test_project 

 Breakpoint 1, main (argc=1, argv=0x7fffffffdec8) at /home/milai/projects/test_project/main.cpp:7
 7      std::cout << str << std::endl;
 (gdb) info locals 
 str = "abc"
 (gdb) c
 Continuing.
 abc
 [Inferior 1 (process 40257) exited normally]
 (gdb) quit
 milai@milai:~/projects/test_project/build/bin$ 

В чем может быть проблема?

Окружение:

  • Ubuntu 20.04.1
  • qtcreator: 4.11.0
  • gdb: 9.1
  • g++ 9.3.0

Ответы (1 шт):

Автор решения: KoVadim

По умолчанию, QtCreator не загружает скрипты от gdb, которые позволяют "красиво выводить сложные типы", но это можно включить в настройках.

Меню Tools->options, потом "вкладка Debug" есть такая галочка "Load system gdb pretty printers".

→ Ссылка