免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 935 | 回复: 0
打印 上一主题 下一主题

strace工具移植到ARM(davinci)平台 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-22 18:44 |只看该作者 |倒序浏览

                                                                                                --------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://
zhiqiang0071.cublog.cn
--------------------------------------------
strace工具是一个非常强大的工具,是调试程序的好工具。要移植到arm平台,就需要使用交叉编译工具编译生成静态链接的可执行文件。具体步骤如下:
1.下载 strace-4.5.16.tar.bz2,不要下载最新的strace-4.5.18.tar.bz2,因为后者编译会出错。下载网址是:http://sourceforge.net/project/showfiles.php?group_id=2861&package_id=2819;
2.解压。对于ARM平台,必须打上一个补丁,补丁在文章的最后面;
3.配置。./configure --host=arm-linux CC=arm_v5t_le-gcc LD=arm_v5t_le-ld;
4.编译。make CFLAGS+="-static",生成strace静态可执行文件,2M多;
5.strip。arm_v5t_le-stip strace,这样可执行文件就减小到600多K。
以上采用的是达芬奇平台的arm工具,也可以直接使用通用的arm-linux-gcc工具,版本3.4.1的我试过,可以编译通过,其他版本的不清楚。
strace的使用介绍可以参考以下两篇文章:
1.http://www.ibm.com/developerworks/cn/aix/library/au-unix-strace.html。
2.http://blog.chinaunix.net/u1/38279/showart_367248.html
--- strace-4.5.16-orig/syscall.c    2005-06-08 21:45:28.000000000 +0100
+++ strace-4.5.16/syscall.c    2005-10-25 19:26:39.000000000 +0100
@@ -1045,6 +1045,15 @@ struct tcb *tcp;
         /*
          * Note: we only deal with only 32-bit CPUs here.
          */
+
+        if (!(tcp->flags & TCB_INSYSCALL) &&
+            (tcp->flags & TCB_WAITEXECVE)) {
+            /* caught a fake syscall from the execve's exit */
+            tcp->flags &= ~TCB_WAITEXECVE;
+            return 0;
+        }
+
+
         if (regs.ARM_cpsr & 0x20) {
             /*
              * Get the Thumb-mode system call number     
               
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/79779/showart_1659310.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP