熟练掌握Linux系统调试环境.pdf

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
熟练掌握Linux系统调试环境

Build Run Linux System Based on VMwareUbuntu10.04 linux-3.2.1 中国科学技术大学软件学院 孟宁 mengning@ 2012年01月 Agenda ♦ 编译Linux在QEMU模拟器上运行 – 1. 准备模拟器 – 2. 编译Linux内核 – 3. 准备根文件系统 – 4. 运行 ♦ 制作完整的PC-Linux系统 ♦ 构建Linux内核的gdb调试环境 准备模拟器qemu ♦ 1. sudo apt-get install qemu – 这个源/ubuntu/有qemu ♦ 2. 有的源中不带qemu,则需要自己编译(未实际 验证) – 获得qemu源代码/download/qemu- 1.0.tar.gz,并解压缩配置、编译,并安装到指定的目录下 – ./configure --prefix=/usr/bin --target-list=i386-softmmu – make – su -c “make install” ♦ 编译安装完成之后,如何使用qemu? – 可以通过指定路径的方式使用qemu,此时qemu在安装目录下的bin 目录中 – 可以将安装目录/bin加入到PATH环境变量中,此时可以在任何目 录下直接使用qemu 编译Linux内核 ♦ 获得/pub/linux/kernel/vx.y/linux- x.y.z.tar.gz,解压缩得到目录linux-x.y.z,不妨称之为 Linux源代码根目录(以下简称源码根目录) – tar -zvxf linux-3.2.1.tar.gz (以3.2.1版本为例) ♦ 进入源代码根目录 ♦ 可以使用make help得到一些编译内核的帮助信息 ♦ 我们采用i386的缺省编译 – make i386_defconfig – make ♦ 可以观察一下编译过程中的输出信息,特别是编译最后阶 段的输出信息。 准备根文件系统(方法一) ♦ 1)建立目标根目录映像 – dd if=/dev/zero of=myinitrd4M.img bs=4096 count=1024 – mkfs.ext3 myinitrd4M.img – mkdir rootfs – sudo mount -o loop myinitrd4M.img rootfs 准备根文件系统(方法一) ♦ 2)准备一个helloworld应用程序,使用静态链接 的方法编译成可执行文件,命名为init,并将init拷 贝到目标根目录下 – (linux启动后期会在根目录中寻找一个应用程序来运 行,在根目录下提供init是一种可选方案) – gcc -static -o init helloworld.c – cp init rootfs/ #includestdio.h int main() { printf(hellworld!\n); } 准备根文件系统(方法一) ♦ 3)准备dev目录 – sudo mkdir rootfs/dev – linux启动过程中会启用console设备 • sudo mknod rootfs/dev/console c

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档