交叉编译器指令

交叉编译器指令 什么是交叉编译?

什么是交叉编译?

什么是交叉编译?

举个例子来解答。我们的电脑PC的CPU是intel或者AMD的,这种CPU全部是x86架构的,内在指令是一样的。而嵌入式linux的CPU一般是ARM的,这种CPU的指令架构和x86完全不同。如果,你在电脑上写了个C语言程序,然后编译运行,但是这种程序只能在PC上,也就是intel或AMD的CPU上运行。你下载到ARM的机器上是不能运行的。如果想要运行,就要在PC上根据ARM的指令架构来编译程序。这种在这种架构的CPU机子上编译另外一种架构CPU的软件,就叫做“交叉”编译。交叉CROSS就是这个意思。

Linux系统中如何安装交叉编译器?

交叉编译器通常以 arm-none-linux-gnueabi.tar.bz2 这样的名称发布(不同厂家的不同开发平台,交叉编译工具链的实际名称可能有所差别,请以实际为准),解压命令: vmuser@Linux-host: ~$ tar xjvf arm-none-linux-gnueabi.tar.bz2 如果希望解压到一个指定的目录,可以先将 arm-none-linux-gnueabi.tar.bz2 压缩包复制到目标目录,然后进入目标目录再运行解压命令,也可以在任意目录解压,通过-C 指定目标目录。假定希望解压到“/home/ctools/”目录,则命令如下: vmuser@Linux-host: ~$ tar xjvf arm-none-linux-gnueabi.tar.bz2 -C /home/ctools/在终端中添加环境变量,需要每次打开终端都设置,也很麻烦。可以考虑将设置的过程添加到系统配置文件中。/etc/profile 是系统全局的配置文件,在该文件中设置交叉编译器的路径,能够让登录本机的全部用户都可以使用这个编译器。 打开终端,输入“sudo vi /etc/profile”命令,打开/etc/profile 文件,在文件末尾添加: export PATH=$PATH:/home/ctools/arm-2011.03/bin/ 然后输入“. /etc/profile”(点 空格 文件名),执行 profile 文件,使刚才的改动生效。如果没有书写错误,此时打开终端,输入 arm-none-linux-gnueabi-,然后按键盘 TAB 键,同样可以看到很多 arm-none-linux-gnueabi-开头的命令。 这些周立功那边很多的,不知道你有没去看过。