ubuntu eclipse beaglebone调试无法正常工作

时间:2013-03-27 16:33:54

标签: eclipse debugging ubuntu beagleboard

我将通过VMware连接到运行虚拟Ubuntu(12.10)的PC的beaglebone。我尝试使用Eclipse(版本3.8)在beaglebone上调试我的C ++代码。

我关注了youtube视频:http://www.youtube.com/watch?v=vFv_-ykLppo。但我无法正常进行调试工作。有人可以帮帮我吗?

以下是我所做的和我得到的。注意:我的主机PC的IP是192.168.1.105。 beaglebone的IP是192.168.102。

  1. Beaglebone通过USB和以太网连接到PC。我能够在Eclipse的嵌入式终端中打开与Beaglebone的连接。
  2. 我在PC的终端输入了以下命令,在我的本地PC上成功安装了gdb-multiarch:sudo apt-get install gdb-multiarch。
  3. 我通过在beaglebone的终端输入以下命令在beaglebone上成功安装了gdbserver:sudo apt-get install gdbserver
  4. I CD到应用程序文件夹并在beaglebone的终端输入此命令:gdbserver [hostPC的IP]:12346 HelloWorldTest4 我收到了这个回复: 处理HelloWorldTest4创建; PID = 1035 聆听12346号港口
  5. 在Eclipse中,我转到Run-> Debug Configurations->,下面是我配置的内容,它们也显示在附加的屏幕截图中。 主要 - >在启动之前构建(如果需要):构建配置:调试;使用工作区设置 Debugger-> Main-> GDB调试器:gdb-multiarch                                  GDB命令文件:.gdbinit Debugger-> Gdbserver设置 - > Gdbserver名称:[beaglebone的IP地址]                                                         端口号:12346
  6. 然后我点击了Debug,我收到了以下错误。 POP-UP窗口:'启动HelloWorldTest4 Debug'遇到了问题。最终发射序列出错: 在控制台中:警告:架构拒绝了目标提供的描述
  7. 问题: 1.这个问题与gdb-multiarch有关吗?怎么解决? 2.我的IP地址是否具有核心指定?

    提前谢谢。

2 个答案:

答案 0 :(得分:3)

我通过在项目文件夹中创建包含以下内容的.gdbinit文件来解决同样的问题:

设置架构臂

然后指向调试配置 - >调试器 - > GDB命令文件输入到这个新的.gdbinit文件并调试

答案 1 :(得分:0)

我也有同样的问题, 我下载了gdb源代码,为目标arm重新编译,并将gdb复制到arm-linux-gnueabi-gdb,在eclipese中我将gdb更改为arm-linux-gnueabi-gdb。一切都开始有效了。

获取gdb(7.8)源并提取它们

./configure --target=arm-none-linux-gnueabi --with-expat=/usr/local/lib/
make
cd gdb/gdbserver
/configure --host=arm-none-linux-gnueabi --with-expat=/usr/local/lib/
make