嵌入式开发中的helloworld

本文记录了从在本机创建Hello World C程序,通过arm-linux-gnueabihf-gcc进行交叉编译,到在ARM开发板上执行的全过程,重点讲解了静态链接编译的选择及其在嵌入式设备部署中的便利性。

背景

近期工作,需要部署嵌入式设备中。对于嵌入式的学习,进行一些记录。

本机操作

1 .保存一个hello.c文件

#include <stdio.h>
int main(int argc,char const *argv[])
{
   printf("hello arm\n");
   return 0;
}

2.交叉编译(本机用的交叉编译器为:arm-linux-gnueabihf-gcc )

arm-linux-gnueabihf-gcc hello.c -static -o hello_arm

这里选择-static静态链接编译,动态链接编译需要很多库,不方便。
这里会生成hello_arm可执行文件(在arm架构的开发板上可执行)
这里可以查看该文件类型:
命令

file hello_arm

结果:
hello_arm: ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, BuildID[sha1]=0c48010148442cb1f9a651e0695e717866416039, with debug_info, not stripped

ARM开发板上操作

将hello_arm文件传到开发板上(这里是VIM3 Amlogic板子,上传方式本次用U盘挂载的方式)
切换到该文件所在目录。
执行:

./hello_arm

结果输出:
hello arm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值