2016-10-22 64 views
0

情況是這樣的:使用舊GDB 4.17與實際Eclipse CDT的(9.0)或至少與Eclipse朱諾

我想調試ST的STM8微控制器與Eclipse。 對於編譯,我使用IAR Kickstart和他們自己的Eclipse插件一起使用。這工作相當好。

不幸的是,他們沒有提供任何方式將他們的C-Spy調試器集成到Eclipse中。

ST有一個自己的環境,所謂的ST Visual Develop或短期STVD。包中包含一箇舊的但可用的GDB。它是GDB 4.17。源代碼也可用,並且能夠編譯它們。

現在的問題:

GDB 4.17不支持任何現代的解釋類似MI,MI1奧德MI0。它只支持控制檯命令。

我試圖用CDT(9.0)使用實際的Eclipse(霓虹燈)並指向我的GDB.exe配置我還監視了GDB.exe的啓動 Eclipse或CDT總是嘗試打開GDB -i或-interpreter參數。但是我的GDB不知道這個命令。所以它會用「無法識別的命令」來回答,並且CDT終止該過程。

在帶有CDT的Eclipse(Juno)的舊版本中,我可以選擇「詳細控制檯模式」,但這也使用-i命令啓動GDB。

現在的問題: 有沒有人有一個想法,如何處理這個問題? 最簡單的方法是告訴CDT它不應該使用任何「mi」模式。

困難的方法是編寫一個基於版本5.0左右的新GDB。但是這對我來說並不是真正的管理......

感謝您的任何意見。

回答

1

不好意思告訴你這個,但是沒有辦法讓CDT在沒有使用MI的情況下啓動GDB。 MI是CDT和GDB溝通的唯一途徑。

表示 「詳細控制檯模式」 的選項不是CDT的DSF-GDB實現的一部分,而不是詳細的信息是自己的控制檯,從可控 - >C/C++ - >調試 - >GDB - >啓用GDB與跡線[...](見https://wiki.eclipse.org/CDT/User/FAQ#I.27ve_been_asked_for_.27gdb_traces.27.2C_where_can_I_find_them.3F

正式CDT只支持GDB 7以上,但仍有6.8左右和以上不受支持的實現。 GDB 4.x和5.x是不支持的。

+0

嗨喬納 謝謝你的答案。不幸的是,這是我所擔心的。 –

+0

我有一個其他的想法。 –

+0

是否有關於MI接口的任何文檔? 也許有可能編寫一個封裝應用程序,它將與CDT和MI命令進行通信,另一方面將已翻譯的命令傳遞給舊的GDB ...如果可能,取決於MI接口的強大性。 如果任何人有關於此的一些信息或知道這是否可能。請發表評論 –