【GDB的BUG】檔案名稱中的數字導致調試錯誤。(附C-Free完全刪除手冊)

來源:互聯網
上載者:User

 教訓:使用GDB的時候,調試的目標檔案名不要由數字開頭,中間不要有空格。

 本人因為ACM競賽需要,機器上的C++編程環境為:C-Free 5 / CDT+Eclipse +MinGW編譯器, 最近發生了不進入斷點的問題,如所示:

直接全部忽略了,讓我十分拙計。。懷疑是編譯器的問題,把內建的MINGW卸掉,在網上下載了MINGW的5.16版本(不得不說,這個的官網——scorceForge被天朝牆了,翻牆的話Goagent無法管到自動下載器,對此只能說吾皇聖明),重新安裝依然無效。

又單獨卸載GDB,重新安裝,依然無效。奇怪的是,如果不使用IDE,不用內建的調試的話,直接在命令列中操作是沒有問題的。

後來發現C-FREE調用的參數存在問題——

從這裡可以看出,反覆提示Function "1" not defined,可是我並沒有定義任何參數為1的函數啊。。。後來偶爾將檔案名稱改成不帶數位,問題解決了。後來經過反覆實驗,證明了GDB對部分中文名和數字名的CPP檔案支援的不到位,會出現無法調試的問題。

另外,C-FREE對輕量級開發和競賽而言,是一個很不錯的編譯器。但是刪除比較麻煩,有的時候會出現視窗錯亂的問題,重裝無效。下面給出完整的刪除方法。

1、使用內建的程式刪除,並刪除該安裝資料夾下所有檔案。

2、在C:\Users\Administrator\Documents中找到C-FREE目錄,全部刪除。

3、C:\Users\Administrator\AppData\Roaming中找到C-FREE目錄,全部刪除。

4、在註冊表(regedit)中找到HKEY_CURRENT_USER-Software-C-free目錄,全部刪除。

5、在註冊表(regedit)中的HKEY_CLASSES_ROOT項下,找到CFree.c,CFree.cfp,CFree.cfpg,CFree.cpp,CFree.cpp,CFree.h,CFree.hpp項,並刪除。

至此,重新安裝C-FREE,便可解決一切問題,是真正的重裝。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.