eclipse c++ && centos && error multiple errors reported. failed to execute mi command

標題已經說明環境:

centos6.5

eclipse c++ 官網下載最新

gcc4.8.2

gdb7.2



現在出現的問題是:

error multiple errors reported. failed to execute mi command .......


這個問題我本人不管是google還是百度都沒有得到合理的答案,雖然搜到了一些解決方案但是不適合我。



我的解決方法是:

因爲在ide下調試不能查看局部變量的值。從而我嘗試用gdb來調試,而gdb調試的時候,用print來打印本地的值是各種找不到符號:no symbols......

ok,懷疑是gdb有問題。


因爲gdb能用,所以也就沒有在意在使用gdb的時候提示的類似這一句的話:

debuginfo-install glibc-2.12-1.149.el6_6.5.x86_64

因爲這個問題我現在解決了,所以沒有辦法重現,我也不想重現了~~~~

現在我轉而解決這個問題:

尊重作者:我參考的帖子是:http://blog.csdn.net/IT_YUAN/article/details/25054827

按照操作第1,2步驟,是沒有問題的,但是在第三部的時候,按裝不上。弄了半天,想想,試試能不能像 使用yum info一樣查看有沒有這個的存在。就輸入命令:

debuginfo-install info

我忘記了後面有沒有輸入完畢,估計就是輸入到Info就結束了,然後很奇葩的就是他給了個安裝列表,這個列表裏就有要安裝的東西。~~~~~~~

那我就治好順從着安裝下去了。



ok~~~@!

現在繼續gdb調試,發現符號依然找不到,雖然上面的問題解決了。

那麼就想想,看看這個gdb的版本是7.2,而網上的最新的已經是7.5了,7.2還是11年出的。。。

那我就只能換個版本試試了,所以就:

yum remove gdb.x86_64,刪除了這個版本。



然後去官網下載了最新的gdb7.9

下載鏈接http://ftp.gnu.org/gnu/gdb/

下載下來安裝:

./configure

./make

沒想到make沒有那麼簡單~~~!!

需要一些外圍的配置庫。

ok,那我就去看看人家是怎麼裝的:尊重作者,參考:http://blog.csdn.net/wengchzh/article/details/7424130

我的問題正好是:error: no termcap library found

太好了,我就按照他的apt-get的庫,全裝了,然後重新 make。


結果悲劇的是:媽蛋,還是這個問題、no termcap....

那我就只能自己去下載一個了,,這個也說一波三折....~~!!

下載地址爲:http://download.chinaunix.net/download.php?id=20509&ResourceID=10232

下載下來發現沒多少東西嘛。而且只要make一下就可以,ok!

./make

 - -||,make出現錯誤~~~@%#¥%@#¥!@#....

錯誤的大意提示是在:

#define bcopy(s, d, n) memcpy((d), (s), (n))

這裏出現錯誤,應該是代碼錯誤吧。然後我就把他註釋掉了,因爲我發現調用只有一處,而且在調用的地方也沒有這些#if...#endif的條件語句,這個宏的意思不就是個memcpy麼,我就把調用的地方手動改成memcpy了。


ok!!!!

先來make成功生成了個xxx.a文件。

但是make完畢的時候還是有錯誤,估計是shell腳本錯誤吧,因爲我後面:

make install

也有錯誤,我去,很無語。不管了,直接重新make gdb試試看。

@#¥@#¥~~~哭吧,還是不行。


好吧,我看了下往上安裝termcap的教程,我去,複雜啊,作爲一個才玩幾天的linux新手,竟然要去定位make的時候需要的lib的路徑,~~~!好吧。

我就直接自己把:

cp xxx.a /usr/bin

cp termcap.h /usr/include

這樣試試看咯。抱着這樣的心態~~~~!!

注意:xxx.a應該是libtermcap.a



華麗分割線----------

接下來回到gdb的目錄,繼續:

make

竟然成功了, 那麼下來用root權限:

make install

ok,沒有問題~~~!!!

開個新的terminal,輸入:

gdb

no commond ??????????????????????????????????????

哎,我操~~~!!



我就看了下

/usr/bin

/usr/local/bin

發現gdb在/usr/local/bin下來,試試:

./gdb

可以運行嘛~~~

那麼爲什麼新開的terminal就不能找到gdb呢,乾脆就直接吧:

cp ./gdb /usr/bin

cp ./gdbserver /usr/bin

ok,下來新的terminal就能找到這個命令了~~~!!!!!




再去gdb調試程序,ok~!!!!

可以print局部變量了,~~!

而且7.9比7.2更好,在走到斷點的時候顯示的信息更多~~



--------------華麗分割線

接下來回到eclipse c++

激動人心的調試下看看,ok!!!

可以顯示局部變量了好麼~~~~



最後附上幾個上面用到的東西,避免連接失效:

termcap:http://pan.baidu.com/s/1i349Bkp

gdb7.9:http://pan.baidu.com/s/1sjNqnFJ,,方便你下載~~!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章