4、深入了解工具链:从选择到使用

深入了解工具链:从选择到使用

1. 交叉编译器示例

在嵌入式开发中,交叉编译器是一个重要的工具。下面是一个使用交叉编译器的示例:

$ mipsel-unknown-linux-gnu-gcc -dumpmachine
mipsel-unknown-linux-gnu

这个命令的作用是显示当前交叉编译器所针对的目标机器类型。

2. 选择C库

Unix操作系统的编程接口是用C语言定义的,现在由POSIX标准来规范。C库是这个接口的实现,它是Linux程序访问内核的通道。即使你使用其他语言(如Java或Python)编写程序,相应的运行时支持库最终也会调用C库。

当C库需要内核服务时,它会使用内核系统调用接口在用户空间和内核空间之间进行切换。虽然可以直接进行内核系统调用而绕过C库,但这很麻烦,而且几乎没有必要。

常见的C库有以下几种:
- glibc :这是标准的GNU C库,可从 这里 获取。它体积较大,而且直到最近都不太容易配置,但它是POSIX API最完整的实现,采用LGPL 2.1许可证。
- musl libc :可从 这里 获取。它相对较新,但作为GNU libc的轻量级且符合标准的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值