织梦CMS - 轻松建站从此开始!

罗索实验室

s3c6410交叉编译gtk小结

落鹤生 发布于 2012-07-19 11:08 点击:次 
最近一段时间,一直在做s3c6410交叉编译工作。主要交叉编译的模块是gtk包。经历了一遍的build.sh以后,基本上得到了这些动态库文件。总结一下这个交叉编译过程,以便为以后工作作为参考
TAG:

最近一段时间,一直在做s3c6410交叉编译工作。主要交叉编译的模块是gtk包。经历了一遍的build.sh以后,基本上得到了这些动态库文件。总结一下这个交叉编译过程,以便为以后工作作为参考。

排错过程:

1.首先要观察交叉编译后的错误信息,看是发生在configure时,还是发生在make时。

2.根据错误发生的时间,来进行排错(无论是在configure后还是Makefile后发生的错误都好解决,不好解决的是在make过程中生成 的文件错误,很难解决)。configure时的错误,要打开configure文件,复制错误信息,进行查找,找到相应位置,分析错误原因。

3.如果还不能找到错误,那使用重定向命令,将过程定位到文件中,仔细查找错误信息。

 

主要错误情况:

1.一些文件缺少必要的头文件。比如pthread,stdlib,nsetenv,X11等等.

2.configure文件中的一些选项会有退出情况,该情况下,可以屏蔽退出操作,让程序继续运行下去。

3.可以屏蔽一些源码包,因为我们要得到的是动态或者静态库文件,但大多数的源码包中都存在一些demo或者test的测试代码。这些代码需要进行连接操作,在进行交叉编译的过程中,可以对这些源码包进行屏蔽,当然在Makefile.am中进行屏蔽了。

4.可以修改一些PATH环境变量,因为有时候会提示不能执行二进制文件。该情况通常是需要arm平台下生成的二进制可执行文件才可真正执行。所以这种情况我们可以采用从arm平台的生成的文件替代。或者也可以采用直接使用pc的/usr/bin下的同名的文件进行代替。

5.对于上面2中提到的在Make过程中生成的文件错误,可以通过多次进行编译的过程实现。原理是makefile的时间戳。

(yzlworld)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www1.rosoo.net/a/201207/16165.html]
本文出处:CSDN博客 作者:yzlworld 原文
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容