配套资料在网盘资料“iTOP-3568 开发板\02_iTOP-3568 开发资料汇总(不含光盘资料)\10_Linux?系统开发配套资料\交叉编译 C 程序配套资料” 21.1 设置交叉编译工具 交叉编译工具在网盘资料“iTOP-3568 开发板\02_iTOP-3568 开发资料汇总(不含光盘资料)\10_Linux系统开发配套资料\交叉编译 C 程序配套资料\交叉编译器”目录下,我们将压缩包拷贝到?Ubuntu?的/usr/local/arm64 目录下(如果没有 arm64 文件夹的话,需要新建一个 arm64 文件夹),然后解压,如下图所示:
?
方法一:设置临时环境变量 所谓的临时环境变量,是指在某个窗口设置了交叉编译的环境变量,如果是换了别的终端窗口就失效了。 我们设置临时环境变量如下图所示: export PATH=/usr/local/arm64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/binPATH 输入“echo $PATH”,查看环境变量是否添加,添加好环境变量如下图箭头所示:
注意!!!交叉编译 C 程序必须在刚刚设置过环境变量的窗口进行编译操作。 hello.c 在光盘资料“iTOP-3568 开发板\02_iTOP-3568 开发资料汇总(不含光盘资料)\10_Linux 系统开 发配套资料\交叉编译 C 程序配套资料\C 程序”目录下。 输入以下命令编译: aarch64-linux-gnu-gcc hello.c -o hello chmod 777 hello
方法二:不设置环境变量,直接使用绝对路径编译。 我们要使用的交叉 编 译 器 aarch64-linux-gnu-gcc , 在 虚 拟 机 ubuntu 的 /usr/local/arm64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin 这个路径下,所以我们可以直接使用 绝对路径找到这个编译器来编译,回到 hello.c 所在的路径,使用命令交叉编译 hello.c /usr/local/arm64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc hello.c -o hello
2 运行 C 程序 我们将上一步编译好的 hello 可执行程序拷贝到开发板上,开发板上可以烧写 Linux 系统,Debian 系统,Ubuntu 系统,我们以 buildroot 系统为例。 首先将 hello 可执行程序拷贝到 U 盘上,然后将 U 盘插到开发板的 usb 口,授予 hello 777 权限,然后运行程序,如下图所示:
大家可以参考编译 hello 的过程来编译其他 C 程序。?
?
?
?
|