本頁旨在建立一個全面的開源 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 (SAIL) 是一個小型、快速、跨平臺的影像解碼庫。 |
|
|
SDL |
Simple DirectMedia Layer (SDL) 是一個用於輸入、音訊、繪圖及更多功能的跨平臺庫。 |
|
|
SIGIL |
|
|
|
Simple2d |
一個小型、簡單、跨平臺的 SDL2/OpenGL 封裝,提供繪圖、媒體、視窗和輸入功能。 |
MIT |
|
[編輯] 通用
[編輯] 程序間通訊
[編輯] 資料庫
[編輯] 配置
[編輯] 環境
[編輯] 通訊
[編輯] 壓縮
[編輯] 併發
庫 |
描述 |
許可證 |
配置 |
ck |
|
|
|
MutexGear |
僅互斥同步(輪子、讀寫鎖、工作佇列)。 |
MutexGear 庫 |
|
[編輯] 資料型別
[編輯] PDF
庫 |
描述 |
許可證 |
配置 |
PDFio |
一個用於讀寫 PDF 檔案的簡單 C 庫。 |
Apache-2.0 |
make |
[編輯] XML
[編輯] 度量
[編輯] 面向物件程式設計
[編輯] Web 前端
[編輯] 除錯
庫 |
描述 |
許可證 |
配置 |
dbg-macro |
一些用於快速、粗糙除錯的宏,它們會列印並返回給定表示式的值,靈感來自 Rust 的 dbg!(...) 宏及其 C++ 變體。 |
MIT |
|
[編輯] 另請參閱
[編輯] 外部連結