Chinaunix首页 | 论坛 | 博客
  • 博客访问: 174150
  • 博文数量: 60
  • 博客积分: 677
  • 博客等级: 上士
  • 技术积分: 667
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-30 15:49
文章分类

全部博文(60)

文章存档

2015年(1)

2013年(6)

2012年(16)

2011年(9)

2010年(28)

我的朋友

分类: BSD

2011-01-07 16:07:27

首先确保/usr/src下有内核的代码
(1)在调试机上构建自己的内核配置文件,假设名字为DEBUG_KERNEL

  cd /usr/src/sys/amd64/conf
  cp GENERIC DEBUG_KERNEL

(2)在调试机上编辑上述内核配置文件DEBUG_KERNEL:

  makeoptions DEBUG=-g
  options KDB
  options KDB_TRACE
  options DDB
  options GDB

(3)在调试机上编译内核:

  /usr/sbin/config DEBUG_KERNEL
  cd ../compile/DEBUG_KERNEL
  make cleandepend
  make depend
 
make

(4)完成上述步骤之后,在调试机的当前目录(/usr/src/sys/amd64/compile/DEBUG_KERNEL/)目录下就会生成 kernel.debug文件。把这个文件拷贝到目标机上,放到/boot/kernel/目录下,更名为kernel,并使用strip -x去掉其中的调试符号。
如果是7.0这样就可以了,但7.3需要在目标机上修改/boot/device.hints文件

hint.sio.0.flags="0x90"

否则不能进行调试,提示gdb:no debug ports present.不知道为啥
阅读(1012) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~