交叉编译(3)——交叉编译工具

本文介绍了多个重要的开发工具,包括Binutils、GCC、GLibc和GDB等。这些工具覆盖了从编译到调试的各个环节,是软件开发过程中不可或缺的一部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

包含的工具

Binutils
Binutils是GNU工具之一,它包括链接器、汇编器和其他用于目标文件和档案的工具,它是二进制代码的处理维护工具。

Binutils工具包含的子程序如下:
ld GNU连接器the GNU linker.
as GNU汇编器the GNU assembler.
addr2line 把地址转换成文件名和所在的行数
ar A utility for creating, modifying and extracting from archives.
c++filt Filter to demangle encoded C++ symbols.
dlltool Creates files for building and using DLLs.
gold A new, faster, ELF only linker, still in beta test.
gprof Displays profiling information.
nlmconv Converts object code into an NLM.
nm Lists symbols from object files.
objcopy Copys and translates object files.
objdump Displays information from object files.
ranlib Generates an index to the contents of an archive.
readelf Displays information from any ELF format object file.
size Lists the section sizes of an object or archive file.
strings Lists printable strings from files.
strip Discards symbols

binutils介绍
https://sourceware.org/binutils/

GCC

GNU编译器套件,支持C, C++, Java, Ada, Fortran, Objective-C等众多语言。

GLibc
Linux上通常使用的C函数库为glibc。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。

glibc 各个库作用介绍
http://www.cnblogs.com/cute/archive/2011/05/03/2035645.html

因为嵌入式环境的资源及其紧张,所以现在除了glibc外,还有uClibc和eglibc可以选择,三者的关系可以参见这两篇文章:

uclibc eglibc glibc之间的区别和联系
http://www.crifan.com/relation_between_uclibc_glibc_eglibc/

Glibc vs uClibc Differences
https://www.uclibc.org/downloads/Glibc_vs_uClibc_Differences.txt

GDB
GDB用于调试程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值