关于嵌入式Linux交叉编译的一些问题

嵌入式交叉编译的流程

  1. 预处理
    xxx-gcc -E -o a.i a.c
    a.c -> a.i

  2. 编译
    xxx-gcc -S -o a.s a.i
    a.i -> a.s

  3. 汇编
    xxx-gcc -c -o a.o a.s
    a.s -> a.o

    PS: -c 选项可以一次性完成1-3步,即 a.c -> a.o

  4. 链接
    xxx-gcc -o a a.o xx.o
    a.o + b.o + xx.o -> a(可执行文件)

    .c : c文件

    .i : 预处理文件

    .s : 汇编文件

    .o : 目标文件(二进制机器码)

    最后生成的是可执行文件(二进制)

编译示意图

更多内容可参考 https://zhuanlan.zhihu.com/p/476697014

库的作用

静态库

动态库

怎么使用库?

链接过程中如何使用库?

程序运行时如何使用库?

多个库可以合成一个库吗?

下一篇:关与I2C的一些问题

下一篇:关于超声波测量风速风向的一些问题


关于嵌入式Linux交叉编译的一些问题
http://clomg.github.io/2023/06/09/guan-yu-qian-ru-shi-linux-jiao-cha-bian-yi-de-yi-xie-wen-ti/
作者
CLoMg
发布于
2023年6月9日
更新于
2023年6月16日
许可协议