El objetivo de esta página es construir una lista exhaustiva de bibliotecas C de código abierto, de modo que cuando alguien necesite una implementación de una funcionalidad particular, no tenga que perder tiempo buscando en la web (
DuckDuckGo
,
Google
,
Bing
, etc.)
Si conoces una biblioteca que pueda ser útil para otros, por favor añade un enlace aquí. No hay restricciones sobre lo que se puede incluir excepto que el
código fuente
de la biblioteca debe estar fácilmente
disponible
para descargar.
La página se proporciona "tal cual" - con la esperanza de ser útil, pero sin ninguna garantía. Pueden aparecer aquí enlaces desactualizados, engañosos o incorrectos. Si has notado alguno de estos, sería genial si corrigieras el error.
Gestores de paquetes
|
Gestor de paquetes
|
Descripción
|
|
build2
|
Una cadena de herramientas de compilación multiplataforma y de código abierto (MIT) que busca aproximar la conveniencia de Rust Cargo para desarrollar y empaquetar proyectos C/C++, proporcionando mayor profundidad y flexibilidad, especialmente en el sistema de compilación.
|
|
cget
|
Obtención de paquetes Cmake. Puede utilizarse para descargar e instalar paquetes cmake.
|
|
cmodule
|
Gestión de dependencias cmake no intrusiva.
|
|
conan
|
Gestor de paquetes C/C++ descentralizado y de código abierto (MIT).
|
|
CPM.cmake
|
Un script cmake que añade capacidades de gestión de dependencias a cmake. Está construido como una capa delgada alrededor del módulo FetchContent de cmake que añade control de versiones, caché, una API simple y más.
|
|
hunter
|
Un gestor de paquetes multiplataforma basado en cmake para proyectos C/C++.
|
|
spack
|
Un gestor de paquetes para supercomputadoras, Linux y macOS. Facilita la instalación de software científico. No está vinculado a un lenguaje particular.
|
|
teaport
|
Un gestor de dependencias inspirado en cocoapods.
|
|
vcpkg
|
Un gestor de paquetes C/C++ para Windows, Linux y macOS.
|
|
xmake
|
Una herramienta de compilación y gestor de paquetes C/C++ multiplataforma basado en Lua.
|
Bibliotecas
Sistema operativo
-
Control de acceso
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
acl
|
|
|
|
|
apparmor
|
|
|
|
-
Atributos extendidos
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
attr
|
|
|
|
Interfaz gráfica de usuario
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
IUP
|
|
|
|
|
Nuklear
|
Una biblioteca GUI multiplataforma en modo inmediato ANSI C de un solo encabezado. (
Doc
)
|
|
|
|
lvgl
|
Biblioteca GUI embebida potente y fácil de usar con muchos widgets, efectos visuales avanzados (opacidad, anti-aliasing, animaciones) y bajos requisitos de memoria (16K RAM, 64K Flash). (
Doc
)
|
|
|
|
tiny file dialogs
|
Un único archivo C multiplataforma (sin init, sin bucle principal, 6 llamadas de función modales)
|
|
|
Widgets de Gtk+
Microsoft Excel
Audio
-
CD
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
cdparanoia
|
|
|
|
-
Códecs
-
Infraestructura
-
Síntesis de voz
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
espeak
|
|
|
|
|
flite
|
|
|
|
Video
-
Códecs
Archivos
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
gmime
|
|
|
|
Matemáticas
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
gsl
|
The GNU Scientific Library (GSL) es una biblioteca numérica para C y C++ (
Src
)
|
GPL
|
make
|
-
Interpolación Multidimensional de Enteros
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
argyll
|
|
|
|
-
Álgebra lineal
-
Finanzas
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
ta-lib
|
|
|
|
-
FFT
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
fftw3
|
|
|
|
-
Multiprecision
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
gmp
|
|
|
|
-
Procesamiento de Señales
Gráficos
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
allegro
|
Allegro-5 es una biblioteca multimedia multiplataforma dirigida principalmente a programación de videojuegos y multimedia.
|
|
|
|
babl
|
|
|
|
|
Bgfx
|
Una biblioteca de renderizado multiplataforma, independiente de API de gráficos, estilo "Bring Your Own Engine/Framework".
|
BSD 2
|
|
|
cairo
|
|
|
|
|
raylib
|
Una biblioteca de desarrollo de juegos C99 multiplataforma con aceleración por hardware OpenGL, soporte completo 3D, animación esquelética, shaders, fuentes, audio, matemáticas, GUI, etc. (
Src
) (
Doc
)
|
Zlib
|
cmake, make, vcpkg, zig
|
|
SAIL
|
S
quirrel
A
bstract
I
mage
L
ibrary es una biblioteca pequeña, rápida y multiplataforma para decodificación de imágenes.
|
|
|
|
SDL
|
S
imple
D
irectMedia
L
ayer es una biblioteca multiplataforma para entrada, audio, dibujo y mucho más.
|
|
|
|
SIGIL
|
|
|
|
|
Simple2d
|
Un wrapper pequeño, simple y multiplataforma de SDL2/OpenGL que proporciona capacidades de dibujo, medios, ventanas y entrada.
|
MIT
|
|
Genérico
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
libmixf
|
|
|
|
Interproceso
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
dbus
|
|
|
|
|
dee
|
|
|
|
|
gdbus
|
|
|
|
Bases de Datos
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
berkeley_db
|
|
|
|
|
libfmrt
|
|
|
|
|
libmongoc
|
Biblioteca controladora oficial en C para MongoDB (
Doc
). Ofrece APIs optimizadas para operaciones CRUD, soporte integral de características (incluyendo
BSON
) y soporte para diferentes mecanismos de autenticación, permitiendo la integración eficiente de funcionalidades de MongoDB en aplicaciones basadas en C.
|
Apache 2.0
|
CMake
|
|
lmdb
|
|
|
|
|
SQLite
|
Una biblioteca en C que implementa un motor de base de datos SQL pequeño, rápido, autónomo, de alta confiabilidad y con todas las características. SQLite es el motor de base de datos más utilizado en el mundo. (
Src
) (
Doc
)
|
Dominio Público
|
|
Configuración
Entorno
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
libXDGdirs
|
|
|
|
Comunicaciones
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
gsoap
|
|
|
|
|
KCP
|
Un protocolo ARQ rápido y confiable que ayuda a las aplicaciones a reducir la latencia de red.
|
MIT
|
|
|
libcurl
|
|
|
|
|
libmicrohttpd
|
|
|
|
|
libsagui
|
|
|
|
|
MQTT-C
|
URL de Github
|
MIT
|
|
|
nanomsg
|
Una biblioteca de sockets que proporciona patrones de comunicación comunes; no tiene dependencias; multiplataforma. Sustituida por
nng
.
|
MIT/X11
|
|
|
UCX
|
Unified Communication X (UCX) proporciona una capa de comunicación optimizada para aplicaciones de Message Passing (MPI), Shared Memory (PGAS) y RPC/data-centric.
|
BSD3
|
|
|
zeromq
|
|
|
|
|
libusb
|
Una biblioteca portable en C que proporciona acceso genérico a dispositivos USB.
|
|
|
Compresión
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
bzip2
|
|
|
|
|
lz4
|
|
|
|
|
zlib
|
|
|
|
Concurrencia
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
ck
|
|
|
|
|
MutexGear
|
Sincronización solo con mutex (rueda, rwlock, colas de trabajo).
|
The MutexGear Library
|
|
Tipos de datos
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
bstrlib
|
|
|
|
|
datastd
|
|
|
|
|
str
|
Otra biblioteca de cadenas para el lenguaje C.
|
|
|
PDF
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
PDFio
|
Una biblioteca simple en C para leer y escribir archivos PDF.
|
Apache-2.0
|
make
|
XML
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
expat
|
|
|
|
|
gsoap
|
|
|
|
Métricas
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
edlib
|
|
|
|
Programación orientada a objetos
Interfaz Web
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
cgit
|
|
|
|
Depuración
|
Biblioteca
|
Descripción
|
Licencia
|
Configuración
|
|
dbg-macro
|
Algunas macros que imprimen y devuelven el valor de una expresión dada para depuración rápida y sencilla, inspiradas en la macro
dbg
!
(
...
)
de Rust y su variante en C++.
|
MIT
|
|
Véase también
Enlaces externos