Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6506893
  • 博文数量: 1159
  • 博客积分: 12444
  • 博客等级: 上将
  • 技术积分: 12570
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-13 21:34
文章分类

全部博文(1159)

文章存档

2016年(126)

2015年(350)

2014年(56)

2013年(91)

2012年(182)

2011年(193)

2010年(138)

2009年(23)

分类: 嵌入式

2013-04-08 19:29:52

http://blog.csdn.net/lanmanck/article/details/4545023


【转帖请注明出处:blog.csdn.net/lanmanck】

1、首先下载insight,我这里是6.8版本,里面已经包含gdb和gdbserver了 :)

2、编译pc端得程序,类似visual studio,可以按照这篇文章来做:

http://linux.chinaunix.net/techdoc/develop/2008/12/28/1055528.shtml

但是有一点上述文章没有提到,那就是编译器链接库路径也要加进去的问题。

#cd insight

#./configure --target=arm-linux --prefix=/opt/work/insight --with-solib-absolute-prefix=/opt/armgcc/4.3.2/libc/lib

 

3、编译arm端得gdbserver:

cd insight/gdb/gdbserver

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

make

现在gdbserver已经生成,拷贝到arm文件系统的bin目录下即可。

 

============================调试方法===========================

1、打开arm-linux-insight,可以看到友好的界面,他会自动加载arm-linux-gdb

2、在界面打开一个arm可执行文件。这时会弹出对话框,让你选择gdb连接方式:有串口、tcp(网口)等。

3、在串口端运行gdbserver 192.168.1.2:1000 myarmexec,然后在insight选择好连接方式,点确定即可。

insight里的端口号1000好像改不了,咋回事?

 

注意:如果编译insight的时候,arm-linux-gcc的库路径没有加上去的话,会报一堆错误和警告,例如:

xxx is not at the expected address。

Error while mapping shared library sections。

 

解决方法如下2种之一:

1)、按照第一个步骤,把编译路径加上去:

--with-solib-absolute-prefix=/opt/armgcc/4.3.2/libc/lib

2)、在insight加载文件之前,设置好路径:

在insight的菜单打开gdb的console,用命令: set solib-absolute-path=/opt/armgcc/4.3.2/libc/lib

 或者:set solib-search-path

现在,我们也可以像visual studio 那样调试linux程序了,嘿嘿.

 

阅读(4356) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~