**
- 三、 使用交叉编译工具编译
**
- 修改makefile文件
执行make clean命令清除上次编译中间文件main.o及可执行文件exe2
- 修改Makefile内容
修改CC := gcc 为CC := $(CROSS_COMPILE)gcc即使用交叉编译工具编译
重新make,生成新的可执行文件exe2,和中间文件main.o
- 运行程序验证
./exe2
运行可执行文件exe2失败,返回“可执行文件格式错误”。
使用file命令查看可执行文件exe2,发现其交叉编译平台为:la-linux-armhf.so.3;查看之前编译的可执行文件exe,发现其交叉编译平台为:ld-linux.so.2.可知exe2应该在linux-arm平台上运行。
- 切换平台运行
(1) 使用网线连接计算机与一台具有linux操作系统及SSH服务端的ARM板,并上电;
(2) 使用scp命令将可执行文件exe2拷贝到arm板的目标文件夹下;
scp exe2 root@192.168.1.33:/home/root/tmp/
第一遍执行时返回”no route to host”,发现未连接arm板;
第二遍执行时发现没有目标文件夹tmp,因此拷贝失败。
(3) 使用ssh命令远程登录arm板,新建目标文件夹,重新拷贝后执行
根据目标板IP远程登录
ssh root@192.168.1.200
新建目标文件夹test_tmp,并重新拷贝可执行文件到目标平台
拷贝成功啦!!!
使用ssh命令重新远程到目标平台,查看拷贝结果,并运行:
也可以使用putty、Xshell等工具远程登录。