项目简介
本项目是一个简单的C库,从NewLib、MSP430 - LibC、Embedded Artistry LibC和Musl代码中提取部分内容编译而成。该库可针对每个项目进行定制,目前支持arm7 - dtmi、arm - cortex - m0、arm - cortex - m3、arm - cortex - m4和arm - cortex - m33等架构。与常用于裸机ARM的Newlib - nano相比,内存占用更小,且内部函数不使用malloc/free。此外,项目包含libc++的实现,具备字符串处理、异常处理、内存管理、线程处理、本地化等C++标准库的核心功能。
项目的主要特性和功能
- 低内存占用:在程序闪存和静态随机存取存储器(SRAM)使用上比Newlib - nano更高效,降低资源消耗。
- 多架构支持:支持多种ARM架构,通用性和可移植性良好。
- 定制性强:可根据不同项目需求定制。
- C++标准库功能齐全:实现C++标准库核心功能,为C++程序提供基础支持。
安装使用步骤
编译libc
- 进入libc目录:
cd libc
- 复制并编辑配置文件:
cp project_make_options.sample project_make_options nano project_make_options
- 编译并安装libc(所有支持的架构):
make make clean
- 编译并安装libc(针对cortex - m3):
make cortex - m3 make cortex - m3 - install make clean
- 移除所有架构的libc:
make distclean
编译libc++
- 回到上级目录,更新子模块:
cd .. git submodule update --init --recursive
- 进入libcpp目录,复制并编辑配置文件:
cd libcpp cp project_make_options.sample project_make_options cp __libcpp_config_site.sample __libcpp_config_site nano project_make_options nano __libcpp_config_site
- 编译并安装libc++(所有支持的架构):
make make clean
- 编译并安装libc++(针对cortex - m3):
make cortex - m3 make cortex - m3 - install make clean
- 移除所有架构的libc++:
make distclean
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】