找回密码
 立即注册
收起左侧

使用qt creator 安装交叉编译环境的意思是怎么理解?

3
回复
7770
查看
[复制链接]
累计签到:2 天
连续签到:1 天
来源: 2014-11-8 10:03:48 显示全部楼层 |阅读模式
1Qter豆
现在我准备用qt creator 学习编程,其中提到了交叉编译环境的搭建;我就开始不理解,
第一: 交叉编译环境的意思是什么? 在PC机上编译生成exe文件,可以直接到pi上运行即可??是这样解释吗》
第二: 交叉编译环境搭建的过程在PC机上安装QT的环境,并且在PC机上对QT的环境进行设置;这时在PC机上编译后的可以执行程序是不能在PC机上运行;但是可以再PI上运行???是这个意思吗??
第三:此时将PC机编译后的可执行文件,使用FTP工具或者其他路径上传到pi中,可以直接在PI中运行,并且查看相关的运行效果?? 是这样的吗???

     上面说的pi就是现在的一款嵌入式开发板;raspberry pi 我现在安装的rasbian系统。目的是可以开发pi上面的程序;但是考虑到嵌入式的编译能力太慢;所以用到了交叉编译;但是也不太理解交叉编译的意思,所以;希望各位大侠帮忙。谢谢。

最佳答案

查看完整内容

因为嵌入式系统的软硬件资源相对于PC机都有限(如CPU性能较低、存储量太小等等),所以是在PC机上建立开发环境,在PC机上编写源程序,并用嵌入式版本的编译器(如arm-linux-gcc)编译及调试程序,编译无误后把可执行程序下载到开发版就可以运行、查看结果了。 如果要在PC机上运行,则需把编译器改为PC版本的(如gcc)。 这里的可执行程序的扩展名在windows系统下是 .exe, 而在Linux或嵌入式Linux下通常是 .bin 。 ...
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-11-8 10:03:49 显示全部楼层
因为嵌入式系统的软硬件资源相对于PC机都有限(如CPU性能较低、存储量太小等等),所以是在PC机上建立开发环境,在PC机上编写源程序,并用嵌入式版本的编译器(如arm-linux-gcc)编译及调试程序,编译无误后把可执行程序下载到开发版就可以运行、查看结果了。 如果要在PC机上运行,则需把编译器改为PC版本的(如gcc)。 这里的可执行程序的扩展名在windows系统下是 .exe, 而在Linux或嵌入式Linux下通常是 .bin 。
回复

使用道具 举报

尚未签到

2014-11-8 22:19:09 显示全部楼层
看来这位兄弟似乎不明白cpu的指令集类型。。  pc机的是x86指令集,树莓派是arm指令集,编译后的二进制是互不兼容的(就是汇编码不同)

加上还有操作系统之间的底层api差别。

交叉编译就是模拟目标机的环境编译二进制文件


目前为止仍然没有一个二进制程序能同时在不同指令集之间运行
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2014-11-11 14:45:39 显示全部楼层
结合楼上两位的介绍,我是明白了不少;非常感谢楼上二位。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了