Я выполняю кросс-компиляцию проекта из Linux для целевой Windows (используя mingw). Вывод DLL и p-invoking в него из С# работает, но отладка очень сложна. Сборка выводит файл .o, который может предоставлять символы gdb, но в основном все, что я могу сделать, - это прерывание исключений и поиск имени функции, которая выполнялась при возникновении исключения; даже полная трассировка стека. Я не могу отлаживать WinDbg, потому что у меня нет файлов .pdb.
Это проект с открытым исходным кодом, созданный для Linux; Я считаю, что их процесс сборки зависит от нескольких установленных пакетов Linux для работы.
Есть ли у меня какие-либо опции? Есть ли утилита, которая может конвертировать файлы .o в .pdb? Или какая-то программа, которая может дать мне больше информации, чем gdb при отладке?