通过三大服务的配置,我们可以在ARM中下载内核和文件系统。我们通过在虚拟机中编程,得到的程序不能在ARM中运行,需要经过一个交叉编译。得到的可执行程序可以在ARM中运行,此时不能在虚拟机Linux中运行。
1、将工具链拷贝到/opt下,解压(此/opt在samba中配置成共享文件夹)
sudo tar -xvf toolchain-4.5.1-farsight.tar.bz2
2、进入目录:toolchain-4.5.1-farsight/bin
cd toolchain-4.5.1-farsight/bin
3、执行pwd后,复制下面的路径
/opt/toolchain-4.5.1-farsight/bin
4、在环境变量中增加工具链路径(注意:增加环境变量的时候不能删掉其它的环境变量,不然会造成其它程序不能运行。)
sudo vi /etc/environment
加入 :/opt/toolchain-4.5.1-farsight/bin(接在引号后面),保存退出
5、使生效:
source /etc/environment
查看效果: arm ,之后,双击TAB!
测试:
1、编写hello.c
#include
int main(void)
{
printf("hello world\n");
return 0;
}
2、交叉编译:
arm-none-linux-gnueabi-gcc -o arm_hello hello.c
3、拷贝到/opt/rootfs
cp arm_hello /opt/rootfs
4、在开发板中执行:
[root@farsight /]# ./arm_hello