• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
主题 : Illegal instruction,困扰了一周了,尝试了各种方法,恳请指导帮忙解决,谢谢!! 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
楼主  发表于: 2015-07-30 16:42

 Illegal instruction,困扰了一周了,尝试了各种方法,恳请指导帮忙解决,谢谢!!

请教下论坛里的各位高手,我用的是unbutu12.0系统, 友善之臂提供的交叉编译器arm- linux-gcc4.5.1,tiny6410的板子,交叉编译简单的hello程序把生成的可执行下载到开发板是可以运行的即在终端上显示了字符串,交叉编译触摸屏的程序tslib,生成的四个文件夹下载到开发板配置好开发板上的环境变量,运行其中的bin文件夹中的ts_test可执行文件,能在开发板上显示触摸屏的测试界面。
可是!!同样的,我对qt4.7.0和qt4.7.1编译生成的嵌入式版本的qt文件夹,将其下载到开发板,配置好环境变量,执行其中demos或者examples文件夹里的可执行文件,却显示Illegal instruction,请问这是怎么回事?我已经用file和ldd命令检查了 对应的.o文件和可执行文件的属性,都是属于arm架构的,和可以执行的hello文件是一样的,除了最后一个not stripped/stripped 属性不同之外。
我也按照网上对qt源代码中的qmake进行修改,设置成-march=armv6,配置也是按照友善之臂开发板的指示设置的,编译的时候报错“undefined reference ...‘ts_read’”,我修改了qt源代码中的linux.conf,加上了-lts,最后编译通过并顺利安装,移植到板子上后且检查了可执行文件的权限都是777的,无论是开发板上已经提供的qte4.7.0里的可执行文件还是我编译好的qt-4.7.0和4.7.1都显示illegal instruction,实在不知道该肿么办了。
还有个疑问是我在开发板子上用uname -a 命令显示tiny6410为“........armv6l,.......”,而不是armv6,这是怎么回事?
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
1楼  发表于: 2015-07-30 16:46

 回 楼主(qing_kong) 的帖子

图片:
这是我在开发板上设置的环境变量
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
2楼  发表于: 2015-07-30 16:48
图片:
这是编译安装好的qt在6410开发板上的位置
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
3楼  发表于: 2015-07-30 16:50
图片:
这是qte4.7.0在pc上make和make install 之后的目录
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
4楼  发表于: 2015-07-30 16:52
图片:
这是我编译嵌入式版本qt的configure脚本
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
5楼  发表于: 2015-07-30 16:55
我如果注释了tslib在板子上 etc/profile 中的环境变量配置指令,在运行bin文件夹中的可执行文件时会显示段错误,如果不注释,是能正常在板子的lcd上显示的,我注释了qt的环境变量指令,则都是显示illegal instruction
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
6楼  发表于: 2015-07-30 16:58
对了,还有一个细节,现在板子已经进入不了系统界面了,就停留在
Starting networking....
...
...
Loading sound card config...
这个界面了,会不会是和这个有关呢
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
7楼  发表于: 2015-07-30 17:08
图片:
这是qte4.7.0的demo中显示的可执行文件属性
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
8楼  发表于: 2015-07-30 17:12
再问个问题,高手看到了请轻喷:
编译嵌入式版本qt时,生成的可执行文件是如何能够符合相应arm板子的架构呢?比如说,是不是要在configure的时候增加什么参数?linux中有什么命令能查看该可执行文件适合哪种arm架构呢?
级别: 新手上路
UID: 80961
精华: 0
发帖: 23
金钱: 115 两
威望: 23 点
贡献值: 0 点
综合积分: 46 分
注册时间: 2012-11-01
最后登录: 2015-09-05
9楼  发表于: 2015-07-30 17:12
版主大大看到了恳请答疑解惑啊!非常感谢!!
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go