最近毕设已经确定,内容是嵌入式linux的arm开发,在看到建立交叉编译环境这部分的时候我看到,linux 下面编程是用的是一些列的工具链,包括GUN Binutils,Gcc,Glibic,Gdb等等,然后看到后面说到arm-linux-gcc、arm-linux-gblic等等以arm-linux-为前缀的工具。
我看书和网上的资料,有说到crosstool的,最多的是说到arm-linux-gcc-*-*-*.tar.bz2/gz的,我看到crosstool大小约2、3M,主要功能是匹配gcc和gdb,还有gblic等等的版本(不知道说的对不对),而arm-linux-gblic这个,一般都是几十兆,我不想糊里糊涂就安装这些
现在我安装的是linux版本是Fedora10,里面安装的时候在安装包选择的时候我选择了办公和编程开发,所以现在系统中有一部分的GUN工具,包括gcc、gdb、(我gcc -v、 gdb -v看过了,显示了版本号)
我的问题是,官方网站上下载的arm-linux-gcc和电脑上面现在已经有的gcc,二者有何区别(既然给arm上面有linux内核,那么在PC上面的编译运行的代码到了arm板子上面也能运行)?
再者现在我是只安装crosstool就可以呢,还是只用安装arm-linux-gcc的某个版本呢,,还是我要两个都安装,还是我什么都不用安装,只需要建立好目录..然后就算是建立好了交叉编译的环境呢,
交叉编译的原理,我看了,主要是因为板子上面资源有限,要在PC上面linux环境下把代码编译好,然后载入到板子上面运行验证、使用,我这样说对吗?
还有,现在没有购买实验板,就算我看ARM的C/C++编程,并且在linux的环境中编译、修改,我怎么知道自己能不能实现想要的功能呢、因为没有ARM的硬件环境,我怎么知道我代码运行的效果呢,有没有仿真软件能先实现?现在没钱买mini2440.。。。
我的问题有点多,分不多,但是问题很认真,希望回答的人能认真回答,我问这些问题对于明白的人是很简单的,但是不懂的人感觉却非常迷茫。
无数个人问过这个问题,里面回答都是简单说说运行代码,安装东西,没有说原理,看了还是不明白。。。
谢谢。
恩,谢谢1楼啊。。哈。。
export我之前用过有点问题,估计路径写错了。。
那现在假设C编译器已经更改了,gdb、gblic,binutls我怎么没有看到有arm-linux前缀的,是不是说调试器、库文件不需要更改,也可以共用呢,crosstool我都不想安装了。。。
听你一说我马上就想买2440.。。。
arm-linux 交叉编译环境的建立,希望有清楚的人解答,复制的闪人
我在arm9下做过linux,qt编程,需要先在PC上安装linux,然后安装arm-linux-gcc,同时为了可以使用arm-linux-gcc来编译程序,需要指定环境变量,这个可以在.profile等文件中进行更改,具体办法你查一下就知道了。或者使用export命令在终端中设置环境变量。两种方法的结果有区别哦!你想用2440的开发板的话就...