在Debian x86-64环境下为armv7l评估板编译运行C代码
如何在x86-64 Debian系统交叉编译C代码并运行在armv7l评估板
方法一:交叉编译(推荐,利用主机更强性能)
1. 安装armv7l交叉编译工具链
在你的x86-64 Debian系统上,通过apt直接安装对应工具链:
sudo apt update sudo apt install gcc-arm-linux-gnueabihf
安装完成后验证工具链是否可用:
arm-linux-gnueabihf-gcc --version
能正常输出GCC版本信息就算安装成功。
2. 编译你的C代码
假设你的代码文件名为hello.c,用交叉编译器生成armv7l架构的可执行文件:
arm-linux-gnueabihf-gcc hello.c -o hello_arm
可以用file命令确认生成文件的架构:
file hello_arm
输出会显示这是ARM 32位的可执行文件,符合armv7l的架构要求。
3. 将可执行文件传输到评估板
- 如果评估板能联网且开启了SSH服务,用scp传输:
scp hello_arm 板端用户名@评估板IP:/板端目标目录/
替换命令里的用户名、IP和目录为你自己的实际信息。
- 也可以把文件拷贝到U盘,将U盘插到评估板上挂载后,再把文件复制到板内目录。
4. 在评估板上运行程序
登录评估板(通过SSH或串口),进入存放hello_arm的目录,先给文件添加执行权限:
chmod +x hello_arm
然后直接运行:
./hello_arm
就能看到Hello World!的输出了。
方法二:直接在评估板上编译(适合板上资源充足的场景)
如果评估板能联网且有足够的内存和存储空间,也可以直接在板上完成编译:
- 把
hello.c传输到评估板(方法同上述传输步骤)。 - 在评估板上安装GCC:
sudo apt update sudo apt install gcc
- 编译并运行代码:
gcc hello.c -o hello ./hello
内容的提问来源于stack exchange,提问作者payam purchi
相关产品推荐
相关产品推荐

