本页面的目的是创建一个全面的开源 C 库列表,以便当需要特定功能的实现时,无需浪费时间在网络上搜索(DuckDuckGo, Google, Bing 等)。
如果您知道可能对其他人有用的库,请在此处添加指向它的链接。对可以包含的内容没有限制,除了库的源代码必须容易获得下载。
本页面按“原样”提供 - 希望有用,但不作任何担保。过时、误导或错误的链接可能会出现在这里。如果您注意到其中之一,如果您能修复错误,那将是最好的。
[编辑] 包管理器
包管理器 |
描述 |
build2
|
一个开源 (MIT) 的跨平台构建工具链,旨在为开发和打包 C/C++ 项目提供类似 Rust Cargo 的便利性,同时在构建系统中提供更深入和灵活的功能。 |
cget
|
Cmake 包检索。这可以用于下载和安装 cmake 包。 |
cmodule
|
非侵入式的 cmake 依赖管理。 |
conan
|
去中心化的,开源 (MIT),C/C++ 包管理器。 |
CPM.cmake
|
一个 cmake 脚本,为 cmake 添加依赖管理功能。它构建为 cmake 的 FetchContent 模块的薄封装,增加了版本控制、缓存、简单的 API 等。 |
hunter
|
一个 cmake 驱动的 C/C++ 项目的跨平台包管理器。 |
spack
|
一个用于超级计算机、Linux 和 macOS 的包管理器。它使安装科学软件变得容易。它不与特定语言绑定。 |
teaport
|
一个受 cocoapods 启发的依赖管理器。 |
vcpkg
|
一个用于 Windows、Linux 和 macOS 的 C/C++ 包管理器。 |
xmake
|
一个基于 Lua 的跨平台 C/C++ 构建工具和包管理器。 |
[编辑] 操作系统
- 访问控制
- 扩展属性
[编辑] 图形用户界面
库 |
描述 |
许可证 |
配置 |
IUP |
|
|
|
Nuklear |
一个单头 ANSI C 即时模式跨平台 GUI 库。 (文档) |
|
|
lvgl |
强大且易于使用的嵌入式 GUI 库,具有许多小部件、高级视觉效果(不透明度、抗锯齿、动画)和低内存要求(16K RAM,64K Flash)。 (文档) |
|
|
tiny file dialogs |
一个单文件 C 跨平台文件对话框(无需初始化,无需主循环,6 个模态函数调用) |
|
|
[编辑] Gtk+ 小部件
[编辑] Microsoft Excel
[编辑] 音频
- CD
- 编解码器
- 基础设施
- 语音合成
[编辑] 视频
- 编解码器
[编辑] 文件
[编辑] 数学
库 |
描述 |
许可证 |
配置 |
gsl |
GNU 科学库 (GSL) 是一个用于 C 和 C++ 的数值库 (源码) |
GPL |
make |
- 整数多维插值
- 线性代数
- 金融
- FFT
- 多精度
- 信号处理
[编辑] 图形
库 |
描述 |
许可证 |
配置 |
allegro |
Allegro-5 是一个跨平台多媒体库,主要用于视频游戏和多媒体编程。 |
|
|
babl |
|
|
|
Bgfx |
一个跨平台、图形 API 不可知,“自带引擎/框架”风格的渲染库。 |
BSD 2 |
|
cairo |
|
|
|
raylib |
一个跨平台 C99 游戏开发库,具有 OpenGL 硬件加速、完整的 3D 支持、骨骼动画、着色器、字体、音频、数学、GUI 等。 (源码) (文档) |
Zlib |
cmake, make, vcpkg, zig |
SAIL |
Squirrel Abstract Image Library 是一个小型、快速且跨平台的图像解码库。 |
|
|
SDL |
Simple DirectMedia Layer 是一个用于输入、音频、绘图等功能的跨平台库。 |
|
|
SIGIL |
|
|
|
Simple2d |
一个小型、简单、跨平台的 SDL2/OpenGL 封装库,提供绘图、媒体、窗口和输入功能。 |
MIT |
|
[编辑] 通用
[编辑] 进程间
[编辑] 数据库
库 |
描述 |
许可证 |
配置 |
berkeley_db |
|
|
|
libfmrt |
|
|
|
libmongoc |
MongoDB 的官方 C 驱动程序库 (文档)。它为 CRUD 操作提供优化的 API,全面的功能支持(包括 BSON)和对不同身份验证机制的支持,从而能够将 MongoDB 功能有效地集成到基于 C 的应用程序中。 |
Apache 2.0 |
CMake |
lmdb |
|
|
|
SQLite |
一个 C 库,实现了小型、快速、自包含、高可靠性、全功能的 SQL 数据库引擎。SQLite 是世界上使用最广泛的数据库引擎。 (源码) (文档) |
公共领域
|
|
[编辑] 配置
[编辑] 环境
[编辑] 通信
[编辑] 压缩
[编辑] 并发
库 |
描述 |
许可证 |
配置 |
ck |
|
|
|
MutexGear |
仅互斥锁同步(自旋锁、读写锁、工作队列)。 |
MutexGear 库 |
|
[编辑] 数据类型
[编辑] PDF
库 |
描述 |
许可证 |
配置 |
PDFio |
一个用于读取和写入 PDF 文件的简单 C 库。 |
Apache-2.0 |
make |
[编辑] XML
[编辑] 指标
[编辑] 面向对象编程
[编辑] Web 前端
[编辑] 调试
库 |
描述 |
许可证 |
配置 |
dbg-macro |
一些宏,用于打印和返回给定表达式的值,以进行快速而粗略的调试,灵感来自 Rust 的 dbg!(...) 宏及其 C++ 变体。 |
MIT |
|
[编辑] 另请参阅
[编辑] 外部链接