主题 : 奇怪的问题,交叉编译得到的程序在开发板上找不到 复制链接 | 浏览器收藏 | 打印
100
级别: 新手上路
UID: 3757
精华: 0
发帖: 9
金钱: 50 两
威望: 18 点
综合积分: 18 分
注册时间: 2009-02-06
最后登录: 2012-03-11
楼主  发表于: 2010-03-23 00:04

 奇怪的问题,交叉编译得到的程序在开发板上找不到

环境:VMware下的虚拟机,运行fedora8,交叉编译器是4.3.2版本
程序很简单,就是
#include<stdio.h>
int main()
{
      printf("测试1234abc\n");
      return 0;
}
保存为abc.c
然后交叉编译生成atest:arm-linux-gcc -o atest abc.c
用gcc直接编译生成gtest:gcc -o gtest abc.c

将这两个程序都放到开发板上,但是不知道为什么,运行交叉编译后生成的atest,提示说找不到atest,可是ls命令里面明明可以看到的。然后又运行gtest,这个却是可以找到的,虽然无法运行。

这到底是怎么回事呢?哪位高手帮忙解答一些,谢谢。下面是截图

级别: 新手上路
UID: 50626
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2011-06-24
最后登录: 2017-09-13
1楼  发表于: 2011-09-23 17:26
樓主 我也發生同樣的問題
我的環境是ubuntu 用virtual box跑的虛擬機
如果有解決方法能否分享?或是有高手麻煩指點一下~
感謝!
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2011-09-23 20:12
很可能是交叉编译器的ABI类型和开发板上的镜像不匹配 。确保用和编译文件系统镜像一样的编译器
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 50626
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2011-06-24
最后登录: 2017-09-13
3楼  发表于: 2011-09-26 10:12
它們是用同一個編譯器編譯出來的.