2011-05-06 70 views
1

我剛剛從Ubuntu 10.04移動到新版本的11.04,當我嘗試使用ddd/gdb進行調試時,我無法設置斷點也看不到流調試器正在執行我的程序。升級到我的操作系統後,我不能設置斷點也沒有看到ddd/gdb的流動

我收到錯誤消息稱

(gdb)b MyFile.cpp:27 
    No line 27 in file "MyFile.cpp". 

當我開始運行我的應用程序中調用r我還可以看到,在我看來與我的問題以下文字信息。調試器會捕獲所有的斷言,但我無法在任何時候停止。

(gdb) r 
    BFD: /lib/x86_64-linux-gnu/libc.so.6: invalid relocation type 37 
    BFD: BFD (GNU Binutils) 2.18.50.20080226 assertion fail elf64-x86-64.c:278 
    BFD: /lib/x86_64-linux-gnu/libc.so.6: invalid relocation type 37 
    BFD: BFD (GNU Binutils) 2.18.50.20080226 assertion fail elf64-x86-64.c:278 

如果我想看到的文件,調試器打開我的文件,但我收到以下錯誤消息

(gdb) list MyFile.cpp:27 
Line number 27 is out of range for "MyFile.cpp". 

你能幫助我嗎? 我看了一些論壇,要求檢查info sourceinfo sources的結果,這是我的,但我不知道該怎麼辦。

(gdb) list MyFile.cpp:27 
Line number 27 is out of range for "MyFile.cpp". 
(gdb) info source 
Current source file is /usr/local/include/boost/exception/exception.hpp 
Compilation directory is /home/emanueler/trunk/tools/myAppBinary 
Located in /usr/local/include/boost/exception/exception.hpp 
Contains 436 lines. 
Source language is c++. 
Compiled with unknown debugging format. 
Includes preprocessor macro info. 

爲什麼它說「編譯爲未知調試格式」。當我在編譯器中給出-g選項時?

回答

0

似乎所有的編譯相關工具也被更新了,包括GCC。如果在重新調試之前重新編譯整個應用程序,這將是最好的。

你可以做一個簡單的測試來檢查你的工具鏈是否正常。寫一個小的hello world應用程序,用-g編譯它,並嘗試在cout行上設置一個斷點。

+0

我試過了,它不起作用。 – 2011-05-06 14:22:17

+0

即使使用hello應用程序也不起作用?有些事情是非常錯誤的。我會重新安裝* build-essential *。 – karlphillip 2011-05-06 15:30:25

+0

Hello world可以被調試。我嘗試重建其他依賴於我的程序的庫,但我仍然有同樣的問題。 – 2011-05-09 11:25:41

相關問題