编译器和目标程序都是相同架构的编译过程,被称为 本地编译 。
编译器和目标程序运行在不同架构的编译过程,被称为 交叉编译。

ubuntu下的安装命令:



sudo apt install gcc-arm-linux-gnueabihf

apt get-install arm-none-eabi-gcc

arm-linux-gnueabihf-gcc –v

其中,arm-linux-gnueabihf-gcc编译后的目标应用程序是运行在Linux操作系统之上的。
none表示无操作系统,arm-none-eabi-gcc编译后的目标应用程序的运行环境是不带操作系统的。

编译命令:

arm-linux-gnueabihf-gcc hello.c –o hello

编译为thumb指令集:

arm-linux-gnueabihf-gcc -mthumb ./hello.c

使用如下命令查看elf文件的指令集:

readelf -a hello

参考链接:
https://doc.embedfire.com/linux/imx6/linux_base/zh/latest/linux_app/arm_gcc_hello_world/arm_gcc_hello_world.html

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部