找回密码
 注册
关于网站域名变更的通知
查看: 353|回复: 1
打印 上一主题 下一主题

给大家分享一个arm-linux-系列工具,ld,ar,as,objcopy

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-10-10 10:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
- w" h0 [2 ~, ?! n# g
一些编译器相关知识学习。# B1 b- I: `( [

* [7 O! D) J/ `2 pGNU GCC简介:
8 f% e- f/ B+ z7 [' A; b7 o& y- f
) R: s. {* e# S* p+ j* r# m( x( i7 o
GNU GCC是一套面向嵌入式领域的交叉编译工具,支持多种编程语言、多种优化选项并且能够支持分步编译、支持多种反汇编方式、支持多种调试信息格式,目前支持X86、ARM7、StrongARM、PPC4XX、MPC8XX、MIPS R3000等多种CPU。
8 }8 V1 ]6 B# I
2 r' B8 S7 q% _* `GNU GCC的基本功能包括:输出预处理后的C/C++源程序(展开头文件和替换宏)
4 i, B- b  ?; N5 ?5 J( [9 Y4 d1 O# y( N, i0 g/ V4 h
输出C/C++源程序的汇编代码* Z( g6 ?/ o  g) J3 u

, g/ z/ A2 e4 j: s4 G4 @输出二进制目标文件
  o$ m" @+ e0 v6 c) Q. E' U* b! m8 l
生成静态库2 r  z! L# r: C0 K. f" U! s0 J: w
+ {& v; u% @" g
生成可执行程序
7 ?$ T9 h+ O2 I) z0 `  R! z3 u- Y" Q. K* M, J) e  }
转换文件格式
$ z3 B/ q5 z$ p4 u* `7 M- d6 V
1 k+ [- X0 i- C- f: dGCC 组成:
, z: y6 s  [' Y! h0 E6 j: \- V3 J
% g4 y  T+ s) y0 a6 }0 M
1. C/C++交叉编译器arm-elf-gcc
! x) J  J" B0 X) A7 ^: A" X' b: {6 i* S$ d/ P7 J* e' Y
  arm-elf-gcc是编译的前端程序,它通过调用其他程序来实现将程序源文件编译成目标文件的功能。
& E  X6 y* g! [" ^, o/ V- v; _7 j' C
7 R' A  P5 v+ d7 J: f  编译时,它首先调用预处理程序(cpp)对输入的源程序进行处理,然后调用 cc1 将预处理后的程序编译成汇编代码,最后由arm-elf-as将汇编代码编译成目标代码。) V$ Y0 Z7 c; Y' [+ b/ C# D( X4 J

+ S+ O3 N) ^1 n  u  arm-elf-gcc具有丰富的命令选项,可以控制编译的各个阶段,满足用户的各种编译需求。
; d5 ?( ^' e9 B# E8 b& }6 {* V0 a& c& n# \2 [8 [0 c# J' l' h; G0 E# N
2. 汇编器 arm-elf-as0 r: n* T6 t  r5 ?& a
* B' @9 }' m+ F  q. v# w
      arm-elf-as将汇编语言程序转换为ELF (Executable and Linking Format,执行时链接文件格式)格式的可重定位目标代码,这些目标代码同其它目标模块或函数库易于定位和链接。
9 K, c/ v* ?* T- p: \# K( P; ?% K1 X7 T" Q
% n* K9 \) y7 _  O      arm-elf-as产生一个交叉参考表和一个标准的符号表,产生的代码和数据能够放在多个区 (Section)中。
. i$ o: Y% z* d5 i" f% n  \1 a  U( w
3. 连接器arm-elf-ld! v- ]1 g: F; [
( k2 A& }+ `" g6 X* I
       arm-elf-ld根据链接定位文件Linkcmds中的代码区、数据区、BSS区和栈区等定位信息,将可重定位的目标模块链接成一个单一的、绝对定位的目标程序。
% R3 y6 s3 R% @  {, O* P4 ~9 h
  G" U8 J% e7 N$ p8 c# l; e- I  k
游客,如果您要查看本帖隐藏内容请回复
/ t: I  I$ i) s9 C3 }1 c7 {1 R

  B  P  x5 I  E% L" h' }. S+ @: N, i  z( A: l* K

# M) k% A4 B$ M4 N- r' R5 `* q6 }  C+ K' P: k  H6 s: W
" z( l! E+ E/ y# R2 z

该用户从未签到

2#
发表于 2019-10-10 22:56 | 只看该作者
好东东必须顶。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 01:48 , Processed in 0.171875 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表