| | |

ds-凯发app

文章来源:米尔科技 发布日期:2013.10.29 浏览次数:13283 次

1、重新编译内核

myd-sama5d34开发板的linux/android系统默认没有开启内核调试信息,所以需要按照以下步骤进行开启。

(1)找到myd-sama5d34开发板的光盘,将“05-android_source\linux-at91”下的linux内核包“linux-at91.tar.bz2”复制到linux主机。

注意:linux内核包所在的目录可能不一样,以实际光盘为准。

(2)在linux主机下切换“linux-at91.tar.bz2”所在目录,输入如下命令解压内核包:

# tar xvjf linux-at91.tar.bz2


(3)进入解压后目录,命令如下:

# cd linux-at91


(4)配置环境变量,命令如下:

# export arch=arm


(5)编译开发板的配置文件:

# make sama5d3_android_defconfig


(6)调用图形菜单对内核进行配置,命令如下:

# make menuconfig


(7)选择“kernel hacking”>“kernel debugging”选项,其符号为“debug_kernel”。该选项默认是开启的。


 

(8)选择“kernel hacking”>“compile the kernel with debug info”选项,符号为“debug_info”。


 

(9)配置完成以后,按两次键,提示退出时选择< yes >保存并退出。


 

(10)配置交叉编译工具,命令如下:

# export cross_compile=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf-

注意:交叉编译工具的搭建请参考myd-sama5d3x开发板的用户手册,目录与上面的可能会有差异,根据具体情况设置。


(11)编译内核,命令如下:

# make


(12)创建linux镜像文件,命令如下:

# make uimage


(13)创建完成后,会生成两个我们调试内核会用到的文件。

-- /arch/arm/boot/uimage

u-boot专用的映像文件,它在zimage之前加上一个长度为0x40的tag。我们下一步需要将它下载到目标板上。

-- /vmlinux

编译出来未压缩的,最原始的内核文件。下面ds-5调试选项中需要调用该文件。


(16)将上面生成的uimage镜像文件拷贝出来,放在自动下载目录下,再按用户手册自动下载进行下载。


2、导入linux/android源码

下面要在ds-5里面新建一个名为“myd-sama5d3x_kernel”的工程,导入内核源码。

(17)打开ds-5,选择“file”>“project...”。


(18)选择“general”>“project”。


 


(18)在project name中输入工程名称,这里名为“myd-sama5d3x_kernel”,然后点击“finish”完成工程创建。

 



(19)打开myd-sama5d3x开发板光盘,将“05-android_source\linux-at91\ linux-at91.tar.bz2”压缩包linux-at91文件夹里面的所有内容解压到ds-5的“myd-sama5d3x_kernel”工程中,然后右键工程名称,选择“refresh”刷新。ds-5中就会显示添加文件。

   

(20)将新编译生成的内核镜像“vmlinux”也复制到“myd-sama5d3x_kernel”工程目录中, 并刷新。


3、调试配置

(21)将dstream的arm jtag 20连接到myd-sama5d34开发板的jtag(j23)调试接口,并连接好dstream和开发板的电源。

 

(20)选择ds-5菜单栏“run”> “debug configuration…”,配置调试选项进行。



(21)在配置调试中,

名称“name”输入“myd-sama5d3x_kernel”作为连接名称。

目标“target”下选择“atmel”>“sama5d3x”>“linux kernel and/or device device debug”。

连接“connections”点击“browse…”选择搜索到的dstream仿真器。

(22)files选线默认留空。debugger选项配置如下。

运行控制“run control”选择“connect only”。

点选“execute debugger commands”,并在输入框中输入:

interrupt

add-symbol-file "myd-sama5d3x_kernel\vmlinux"

  


(22)下拉“debugger”选项卡,点击“paths”下面的“workspace…”按钮,选择“myd-sama5d3x_kernel”工程作为ds-5源码搜索路径。


(17)打开开发板电源(或者复位),让开发板u-boot引导kernel,然后点击ds-5中的的“debug”按钮开始调试。

 


(18)这样ds-5就开始连接开发板了,相关视图如下,显示当前所有的调试名称,并且可以进行调试控制.


上图中,各控制按钮的作用为:


 连接目标板

 断开连接

  删除连接

 从main函数或者entry point调试

 继续全速运行

 停止运行

   单步调试

 选择按c程序单步调试,或者按汇编程序调试


(19)命令栏,可以在“commands”后面敲入命令,让开发板执行,比如敲入“step”就会进行单步调试。鼠标位于输入框内,按“alt /”可获得命令提示。




(20)汇编程序栏,显示程序对应的汇编程序、地址和操作数等。




(21)寄存器栏,显示内核里面的所有寄存器,在调试的时候可以对寄存器进行修改。



本文来自凯发app-凯发k8官网科技,原文地址: http://www.myir-tech.com/resource/500.asp,转载请注明出处。

比较和选型

手册教程

应用笔记

好书推荐

凯发k8官网的技术支持服务指南

常见问题解答

网站地图