linux下Eclipse的使用方法总结
安装的版本
jdk-6u7-linux-i586.bin
eclipse-cpp-ganymede-SR1-linux-gtk.tar.gz
主机方面的设置
Run->debug configurations…
对main选择project、c/c++ Application(这里的工程名为hello)
对debugger->Main设置
Debugger选择gdbserver Debugger
Main->GDB debugger选择arm_v5t_le-gdb(这里是使用的绝对路径)
对debug->connection设置
选择tcp协议
Host name or IP address:6(这里写的是虚拟机linux的ip)
Port number:1234(端口号这里是随便写的,但要大于1024,因为小于1024的端口有可能被系统所用)
这样主机这边的设置就完毕了
设置开发板,把gdbserver和可执行程序hello都拷到开发板那边,然后运行
./gdbserver :1234 hello(还有一种写法是./gdbserver 196:1234 hello),目前是使用的前者。
运行之后开发板显示:
./gdbserver :1234 hello
Process hello created;pid=1276
Listening on port 1234
但在主机进行run->debug时出现错误:connection refused
暂时不知道是为什么,后来上网查找了一些内容“我们进行的是交叉开发,CDT里头自带的Debug Configuration无法完成这种开发,需要安装一个插件—-Zylin Embedded CDT ”
安装zylin embedded CDT
点击help->software updates…..
按照下面的步骤,点击add site输入网址/zylincdt,(/zylincdt)这时候最好是刷新一下,然后进行install就可以了
安装之后run-> debug configurations…,会生成zylin embedded debug(Cygwin和native)
设置zylin
右击zylin embedded debug (Native)点击new,然后进行设置,除了main、debugger之外,还要设置commands
同样选择arm_v5t_le-gdb
对于commands来说,在initialize commands下面写上:target remote 9:1234(9是开发板的ip,端口1234要和上面设置的端口相同)
这样就设置好了。
开发板同样启动gdbserver然后主机这边进行调试
开发板:
./gdbserver :1234 hello
Process hello created;pid=1276
Listening on port 1234
Remote debugging from host 6………..
主机:
然后进入debug形式,点击resume然后可以设置断点进行单步调试了。
上面调试的应用程序只是简单的几句调试起来比较简单,但是用到wifi_ipc_6446就出现了问题,也许是因为涉及到的库太多的原因。
开发板错误截图如下:(开发板的gdbserver关闭链接并且重新启动进行监听)
主机这边的错误是:
由于开发板的gdbserver服务重启,所有我又执行了debug一次,这次出现了另一个问题:
开发板错误:
主机的错误:
3