2012-06-15 156 views
1

我想使用gdb在arm-Linux開發板上進行調試。編譯gdbserver時出錯。交叉編譯錯誤gdbserver

主持人:Ubuntu的11 32位 目標:ARM-Linux的海灣合作委員會(GCC 4.4.3版)

[email protected]:/home/mickey/gdb-7.4# ./configure --target=arm-linux --host=arm-linux 

make 

我收到此錯誤信息:

configure: error: no termcap library found 

從我搜查谷歌。編譯器無法獲取ncurses庫。

checking for tgetent in -ltermcap... no 
checking for tgetent in -ltinfo... no 
checking for tgetent in -lcurses... no 
checking for tgetent in -lncurses... no 

我按照建議的解決方案來安裝libncurses5-dev,但問題仍然存在。 libncurses5確實存在於我的Linux中。

[email protected]:/home/mickey# dpkg -l | grep curse 
ii libcurses-perl         1.28-1          Curses interface for Perl 
ii libghc6-hscurses-dev       1.3.0.2-3build3       ncurses bindings for Haskell - development files for GHC6 
ii libncurses5          5.7+20101128-1        shared libraries for terminal handling 
ii libncurses5-dev         5.7+20101128-1        developer's libraries for ncurses 
ii libncursesw5         5.7+20101128-1        shared libraries for terminal handling (wide character support) 
ii libncursesw5-dev        5.7+20101128-1        developer's libraries for ncursesw 
ii mtr-tiny          0.80-1          Full screen ncurses traceroute tool 
ii ncurses-base         5.7+20101128-1        basic terminal type definitions 
ii ncurses-bin          5.7+20101128-1        terminal-related programs and man pages 
ii ncurses-term         5.7+20101128-1        additional terminal type definitions 

請幫忙指出我錯過了什麼。非常感謝您

+0

嘗試'apt-get install libtinfo-dev',然後重新嘗試'./configure'和'make'步驟。 – sarnold

+0

您需要爲ARM目標交叉構建所有必需的庫,並相應地爲目標arm env設置相關lib路徑。 –

回答

0

主持人:Ubuntu的11 32位

32位是什麼?推測你的主機是i686-linux-gnu,而不是sparc-linux-gnu。

的./configure --target =在arm-linux的主機=臂的Linux

與你正試圖建立GDB將在arm-linux和調試arm-linux二進制運行上面的命令,也就是你正在爲arm-linux配置原生 GDB(但在i686-linux上構建它)。這樣的本地GDB不能使用主機庫(出於顯而易見的原因)。

但它看起來像你想跨越gdb,而不是本地的。在這種情況下,請嘗試

./configure --build=i686-linux --host=i686-linux --target=arm-linux 

閱讀this可能會有所幫助。

+0

對我而言,他希望本地ARM gdb直接在板上運行。而且它仍然沒有回答這個問題。 –