Цель данной страницы — создать исчерпывающий список библиотек на языке C с открытым исходным кодом, чтобы при необходимости реализации определённой функциональности не приходилось тратить время на поиски в интернете (
DuckDuckGo
,
Google
,
Bing
и т.д.).
Если вы знаете библиотеку, которая может быть полезна другим, пожалуйста, добавьте ссылку на неё здесь. Нет никаких ограничений на то, что может быть включено, за исключением того, что
исходный код
библиотеки должен быть легко
доступен
для загрузки.
Страница предоставляется «как есть» — с надеждой на полезность, но без каких-либо гарантий. Здесь могут появляться устаревшие, вводящие в заблуждение или неверные ссылки. Если вы заметили таковые, было бы замечательно, если бы вы исправили ошибку.
Менеджеры пакетов
|
Менеджер пакетов
|
Описание
|
|
build2
|
Открытый (MIT), кроссплатформенный инструмент сборки, который стремится приблизить удобство Rust Cargo для разработки и упаковки C/C++ проектов, обеспечивая при этом большую глубину и гибкость, особенно в системе сборки.
|
|
cget
|
Получение пакетов Cmake. Может использоваться для загрузки и установки cmake пакетов.
|
|
cmodule
|
Ненавязчивое управление зависимостями cmake.
|
|
conan
|
Децентрализованный, открытый (MIT) менеджер пакетов для C/C++.
|
|
CPM.cmake
|
Скрипт cmake, который добавляет возможности управления зависимостями в cmake. Построен как тонкая оболочка вокруг модуля FetchContent cmake, добавляющая контроль версий, кэширование, простой API и многое другое.
|
|
hunter
|
Кроссплатформенный менеджер пакетов для C/C++ проектов на основе cmake.
|
|
spack
|
Менеджер пакетов для суперкомпьютеров, Linux и macOS. Упрощает установку научного программного обеспечения. Не привязан к конкретному языку программирования.
|
|
teaport
|
Менеджер зависимостей, вдохновленный cocoapods.
|
|
vcpkg
|
Менеджер пакетов для C/C++ для Windows, Linux и macOS.
|
|
xmake
|
Кроссплатформенный инструмент сборки и менеджер пакетов для C/C++ на основе Lua.
|
Библиотеки
Операционная система
-
Контроль доступа
-
Расширенные атрибуты
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
attr
|
|
|
|
Графический пользовательский интерфейс
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
IUP
|
|
|
|
|
Nuklear
|
Однозаголовочная ANSI C библиотека GUI в режиме immediate mode для кроссплатформенной разработки. (
Документация
)
|
|
|
|
lvgl
|
Мощная и простая в использовании встраиваемая GUI библиотека с множеством виджетов, продвинутыми визуальными эффектами (прозрачность, сглаживание, анимации) и низкими требованиями к памяти (16K RAM, 64K Flash). (
Документация
)
|
|
|
|
tiny file dialogs
|
Однострочная C кроссплатформенная библиотека для работы с файлами (без инициализации, без основного цикла, 6 модальных вызовов функций)
|
|
|
Виджеты Gtk+
Microsoft Excel
Аудио
-
CD
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
cdparanoia
|
|
|
|
-
Кодеки
-
Инфраструктура
-
Синтез речи
Видео
-
Кодеки
Файлы
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
gmime
|
|
|
|
Математика
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
gsl
|
GNU Scientific Library (GSL) - это числовая библиотека для C и C++ (
Исходный код
)
|
GPL
|
make
|
-
Целочисленная многомерная интерполяция
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
argyll
|
|
|
|
-
Линейная алгебра
-
Финансы
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
ta-lib
|
|
|
|
-
FFT
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
fftw3
|
|
|
|
-
Мультиточность
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
gmp
|
|
|
|
-
Обработка сигналов
Графика
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
allegro
|
Allegro-5 — это кроссплатформенная мультимедийная библиотека, в основном ориентированная на разработку видеоигр и мультимедийное программирование.
|
|
|
|
babl
|
|
|
|
|
Bgfx
|
Кроссплатформенная, независимая от графического API, библиотека рендеринга в стиле "Bring Your Own Engine/Framework".
|
BSD 2
|
|
|
cairo
|
|
|
|
|
raylib
|
Кроссплатформенная библиотека для разработки игр на C99 с аппаратным ускорением OpenGL, полной поддержкой 3D, скелетной анимацией, шейдерами, шрифтами, аудио, математикой, GUI и т.д. (
Исходный код
) (
Документация
)
|
Zlib
|
cmake, make, vcpkg, zig
|
|
SAIL
|
S
quirrel
A
bstract
I
mage
L
ibrary — это небольшая, быстрая и кроссплатформенная библиотека для декодирования изображений.
|
|
|
|
SDL
|
S
imple
D
irectMedia
L
ayer — это кроссплатформенная библиотека для ввода, аудио, отрисовки и многого другого.
|
|
|
|
SIGIL
|
|
|
|
|
Simple2d
|
Небольшая, простая кроссплатформенная обёртка SDL2/OpenGL, предоставляющая возможности отрисовки, работы с медиа, создания окон и обработки ввода.
|
MIT
|
|
Обобщённый
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
libmixf
|
|
|
|
Межпроцессное взаимодействие
Базы данных
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
berkeley_db
|
|
|
|
|
libfmrt
|
|
|
|
|
libmongoc
|
Официальная библиотека драйвера C для MongoDB (
Документация
). Предлагает оптимизированные API для операций CRUD, полную поддержку функций (включая
BSON
) и поддержку различных механизмов аутентификации, обеспечивая эффективную интеграцию функциональности MongoDB в приложения на основе C.
|
Apache 2.0
|
CMake
|
|
lmdb
|
|
|
|
|
SQLite
|
Библиотека на C, реализующая компактный, быстрый, автономный, высоконадежный и полнофункциональный механизм базы данных SQL. SQLite является наиболее используемым механизмом базы данных в мире. (
Исходный код
) (
Документация
)
|
Public Domain
|
|
Конфигурация
Окружение
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
libXDGdirs
|
|
|
|
Коммуникации
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
gsoap
|
|
|
|
|
KCP
|
Быстрый и надежный ARQ протокол, который помогает приложениям снизить сетевую задержку.
|
MIT
|
|
|
libcurl
|
|
|
|
|
libmicrohttpd
|
|
|
|
|
libsagui
|
|
|
|
|
MQTT-C
|
Github URL
|
MIT
|
|
|
nanomsg
|
Библиотека сокетов, предоставляющая общие шаблоны коммуникации; не имеет зависимостей; кроссплатформенная. Заменена на
nng
.
|
MIT/X11
|
|
|
UCX
|
Unified Communication X (UCX) предоставляет оптимизированный коммуникационный слой для приложений Message Passing (MPI), Shared Memory (PGAS) и RPC/data-centric.
|
BSD3
|
|
|
zeromq
|
|
|
|
|
libusb
|
Переносимая библиотека на C, предоставляющая универсальный доступ к USB-устройствам.
|
|
|
Сжатие
Конкурентность
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
ck
|
|
|
|
|
MutexGear
|
Синхронизация только с помощью мьютексов (колесо, rwlock, рабочие очереди).
|
The MutexGear Library
|
|
Типы данных
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
bstrlib
|
|
|
|
|
datastd
|
|
|
|
|
str
|
Еще одна библиотека строк для языка C.
|
|
|
PDF
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
PDFio
|
Простая библиотека на C для чтения и записи PDF файлов.
|
Apache-2.0
|
make
|
XML
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
expat
|
|
|
|
|
gsoap
|
|
|
|
Метрики
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
edlib
|
|
|
|
Объектно-ориентированное программирование
Веб-интерфейс
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
cgit
|
|
|
|
Отладка
|
Библиотека
|
Описание
|
Лицензия
|
Конфигурация
|
|
dbg-macro
|
Несколько макросов, которые выводят и возвращают значение заданного выражения для быстрой отладки, вдохновленные макросом Rust
dbg
!
(
...
)
и его C++ вариантом.
|
MIT
|
|
Смотрите также
Внешние ссылки