Невозможно выполнить отладку 64-разрядного приложения в конфигурации выпуска с включенной отладочной информацией
Я пытаюсь отладить приложение, которое находится в конфигурации выпуска - 64-разрядная платформа Windows , но никакие точки останова не будут поражены.
Я включил компилятор отладочная информация опция:

Я могу отлаживать приложение, когда оно находится в конфигурации 32-разрядного выпуска; точки останова работают нормально.
| Configuration | 32-bit | 64-bit |
|---------------|------------|------------|
| Debug | Debuggable | Debuggable |
| Release | Debuggable | Fails |
All with "Debug information" set to "Debug information",
and full build (Shift+F9) before running.
Итак, три вопроса:
- Почему настройка отладочной информации работает для 32-разрядной версии отладчик, но не 64-битный дубаггер?
- какую опцию я должен изменить, чтобы разрешить мне отлаживать 64-разрядные приложения в конфигурацииRelease ?
Почему 64-разрядный отладчик может отлаживать приложение в конфигурацииDebug , но не в конфигурацииRelease ?
Бонусные Скриншоты
32-разрядные параметры компоновщика релизов:

64-разрядные параметры компоновщика релизов:

1 ответ:
Я думаю, что вам нужно включить отладочную информацию в параметрах компоновщика. По крайней мере, когда я отключаю это, точки останова не поражаются, а когда я включаю этот параметр, точки останова поражаются.
В общем, из того, что я могу сказать, используя надежный метод проб и ошибок, вам нужно следующее, чтобы включить отладку:
- 32 бит: включена отладочная информация компилятора.
- 64 бит: включена отладочная информация компилятора и компоновщика.
Comments