Pau*_*aul 4 eclipse gdb eclipse-cdt scons
这是工具堆栈:安装在Windows 7(x64)上的是带有CDT和SConsolidator插件的Eclipse(Juno x64).下面是安装了64位支持的TDM-GCC(x64)软件包.
如果我构建一个64位应用程序并使用Eclipse(它使用与GCC捆绑的gdb)进行调试,那么它构建时没有错误并且调试很好.
当我构建一个32位应用程序并尝试使用Eclipse调试它时,它构建正常但gdb失败:
gdb: unknown target exception 0x4000001f...
Run Code Online (Sandbox Code Playgroud)
通过命令行使用相同的gdb进行调试工作正常.
关于如何解决这个问题的任何想法?
仅供参考:以下是导致gdb异常的一些警告:
warning: `C:\Windows\system32\ntdll.dll': Shared library architecture i386:x86-64 is not compatible with target architecture i386.
warning: `C:\Windows\SYSTEM32\wow64.dll': Shared library architecture i386:x86-64 is not compatible with target architecture i386.
warning: `C:\Windows\SYSTEM32\wow64win.dll': Shared library architecture i386:x86-64 is not compatible with target architecture i386.
warning: `C:\Windows\SYSTEM32\wow64cpu.dll': Shared library architecture i386:x86-64 is not compatible with target architecture i386.
warning: Could not load shared library symbols for ntdll32.dll.
Do you need "set solib-search-path" or "set sysroot"?
warning: Could not load shared library symbols for WOW64_IMAGE_SECTION.
Do you need "set solib-search-path" or "set sysroot"?
warning: Could not load shared library symbols for WOW64_IMAGE_SECTION.
Do you need "set solib-search-path" or "set sysroot"?
warning: Could not load shared library symbols for NOT_AN_IMAGE.
Do you need "set solib-search-path" or "set sysroot"?
warning: Could not load shared library symbols for NOT_AN_IMAGE.
Do you need "set solib-search-path" or "set sysroot"?
Run Code Online (Sandbox Code Playgroud)
小智 7
我在不同的场景中遇到了类似的问题,但我认为解决方案也适用于此.
我是从http://www.equation.com/servlet/equation.cmd?fa=gdb下载的gdb.exe 来调试C++程序.我第一次尝试64位,因为我的电脑是64位但我得到了与保罗上面相同的错误.然后我尝试了32位gdb.exe,它的工作原理.
我也按照保罗给出的链接,也有32位的捆绑.所以我假设捆绑包取决于应用程序的类型而不是平台的配置.但是,我怀疑64位捆绑包将适用于32位架构.我没试过,也不能说肯定.
我建议安装支持32位的软件包来调试32位应用程序.