MS имеет 2 консольных отладчика, которые называются CDB и NTSD , поэтому вам не требуется Visual Studio GUI для отладки. На самом деле существует множество сред отладки в Windows от MS, кроме обычной Visual Studio. Просто установите их на свой Windows сервер и управляйте ими удаленно с вашего терминала
Вы также можете отлаживать код, скомпилированный в MSV C, с LLDB, так как формат PDB издавался долгое время go и LLVM на Windows поддерживают его . Понятия не имею о текущем LLDB на Linux, хотя
И поскольку у вас есть исходный код, иногда отладчик старой школы printf
- лучший способ проанализировать проблему
Если вы можете получить Windows VM, будет гораздо лучше сделать удаленную отладку . Фактически почти все отладчики поддерживают эту функцию, включая GDB или LLDB, поэтому даже если у вас нет исходного кода, вы все равно можете запустить любой Windows отладчик и выполнять инструкции вместо высокоуровневого кода линии от удаленного компьютера
Альтернативный способ - взять дамп памяти и позже отладить . Получив файл дампа, просто перетащите его в решение VS или любой инструмент отладки , например WinDbg , а затем выберите «Начать отладку». Теперь вы можете просматривать инструкции / строки кода и проверять значения переменных или переходить к кадру стека произвольной функции, как будто вы действительно запускаете некорректно работающее приложение
Существует много способов выгрузки памяти процесса , Вы можете настроить Windows на автоматическое сохранение файла дампа при сбое приложения или просто делать снимки памяти вручную во время выполнения. Сравнение 2 снимков также полезно для обнаружения утечки памяти. Для получения дополнительной информации о том, как это сделать, читайте
Существует также простой способ получить дамп живого процесса, используя task manager (или любые другие подобные инструменты )
![Create dump file in task manager](https://i.stack.imgur.com/z72mf.png)