Не удается правильно отладить в Eclipse C ++ с использованием MinGW32 - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь использовать gdb для отладки моего приложения C ++ в Eclipse Version: 2019-06 (4.12.0). Проблема в том, что я получаю следующее в трассировке стека, хотя отладчик должен остановиться в начале main:

<terminated, exit value: 0>gdb (7.6.1)

Если я использую какие-либо переменные в исходном коде, они не отображаются в Variables tab.

Код, с которым я тестирую отладчик, является типичной программой "hello world":

#include <iostream>
using namespace std;

int main() {
    cout << "Hello World";
    return 0;
}

У меня установлен Mingw32 g ++, и я могу скомпилировать без проблем. Я попытался запустить gdb в командной строке, и он показывает, что он установлен: GNU gdb (GDB) (Cygwin 8.1.1-1) 8.1.1.

У меня есть переменная окружения: MINGW_HOME, указывающая на родительский каталог, содержащий bin и другие каталоги.

В Debug Configurations -> Debugger у меня значение GDB debugger установлено на gdb и GDB command file установлено на .gdbinit

В чем может быть проблема ? В моей системе Cygwin, mingw32 и mingw64 установлены ранее, и я думаю, что отладчик может использовать Cygwin вместо mingw32. Это проблема? Как я могу убедиться, что все мои сборки и отладки выполняются только с помощью mingW32?

Используемые инструменты: GCC Assembler GCC Archiver GCC C++ Compiler GCC C Compiler MinGW C Linker MinGW C++ Linker

РЕДАКТИРОВАТЬ: Я удалил Cygwin и изменил его окружение указывает на C:\MinGW\bin. Теперь, если я проверю gdb следующие отпечатки: GNU gdb (GDB) 7.6.1 вместо Cygwin: GNU gdb (GDB) (Cygwin 8.1.1-1) 8.1.1. Я попытался снова запустить отладчик, но все та же проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...