List of C software and tools
![]() | This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. (September 2025) |
This is a list of software and programming tools for the C programming language, which includes libraries, debuggers, compilers, integrated development environments, tools, and related projects.
Libraries and tools
[edit]- Adns — asynchronous DNS resolver library[1]
- Advanced Linux Sound Architecture — API for sound card device drivers[2]
- Allegro — cross-platform software library for video game development[3]
- Apache Portable Runtime — Apache web server tool set of APIs that map to the underlying operating system[4]
- Argon2 — memory-hard password hashing library[5]
- Berkeley DB — embedded database software library for key/value data[6]
- Binary File Descriptor library — binary file manipulation library in the GNU toolchain
- Boehm garbage collector – conservative garbage collector
- Borland Graphics Interface — graphics library for Borland compilers
- BSAFE — FIPS 140-2 validated cryptography library
- Chipmunk — 2D real-time rigid body physics engine
- C POSIX library — specification of a C standard library for POSIX systems
- C standard library – standard library for the C programming language
- Cairo – vector graphics library API for software developers
- CFD General Notation System (CGNS) — data format and library for computational fluid dynamics
- cJSON — lightweight JSON parser
- CLIPS — public-domain software tool for building expert systems
- Core Audio — low-level API for dealing with sound in Apple's macOS and iOS operating systems
- Core Foundation — API for macOS and iOS and other Apple operating systems
- Core Image — GPU accelerated image processing technology for Apple operating systems with Quartz graphics rendering layer.
- Core Text — text layout and font rendering API for macOS and iOS.
- Cryptlib — portable cryptography library
- cURL / libcurl — CLI app for uploading and downloading individual files, such as a URL from a web server over HTTP.
- DevIL — cross-platform image library for loading and converting file formats
- DirectFB — graphics acceleration and input device handling library
- Dld — dynamic loading library
- Expat — stream-oriented XML 1.0 parser library, written in C99.
- FFmpeg — multimedia framework for audio/video processing
- Fontconfig — font customization and configuration library
- FreeTDS — database library for Sybase and Microsoft SQL Server
- FreeType — render text onto bitmaps with a font rasterization engine
- GD Graphics Library — image creation and manipulation library
- GDK — graphics abstraction layer for GTK
- GEGL — graph-based image processing framework
- GIO — I/O and virtual file system library in GLib
- GLib — utility library providing data structures, event loops, and portability functions.
- glibc — GNU implementation of the C standard library
- GLFW — library for OpenGL contexts, windows, and input device handling
- GNet — networking library for GLib
- GNU Libtool — Library management tool
- GNU portability library — collection of portability routines for GNU software
- GNU Portable Threads — POSIX/ANSI-C based user space thread library for UNIX for scheduling multithreading
- GNU Readline — command-line editing library
- GnuTLS — secure communications (TLS/SSL) library
- GObject — object system library for GNOME
- GTK — widget toolkit for creating graphical user interfaces
- GTK Scene Graph Kit (GSK) — scene graph and rendering toolkit for GTK
- HDF — file format and library for managing large datasets
- Integrated Performance Primitives — Intel library of optimized multimedia and data processing routines
- IUP — portable GUI toolkit
- J2K-Codec — JPEG 2000 image codec
- JasPer — reference implementation of the codec specified in the JPEG-2000 Part-1 standard
- LDAP API — API for interacting with Lightweight Directory Access Protocol
- LZO — lossless compression library
- Liba52 — decoder for A/52 (AC-3) audio streams
- libarchive — reading and writing various archive and compression formats
- Libart — 2D graphics library
- Libavcodec — codec library from FFmpeg
- Libavdevice — library for handling multimedia devices
- Libavfilter — audio and video filter library
- Libavformat — library for muxing and demuxing multimedia
- Libpcap — packet capture library
- Libdca — decoder for DTS audio
- Libdvdcss — access to encrypted DVD-Video discs
- libevent — asynchronous event notification callbacks
- libffi — foreign function interface
- libfuse — userspace filesystem
- Libgegl — programming interface to GEGL image processing
- libgcrypt — cryptography
- Libgimp — plug-in development library for GIMP
- Libhybris — compatibility layer for running Android libraries on Linux
- Libinput — input device library for Wayland and X.Org
- libjpeg — JPEG image library
- libLAS — reading and writing geospatial data encoded in the ASPRS laser (LAS) file format
- libmicrohttpd — small C library for embedding HTTP server functionality
- Libmpcodecs — media player codec library from MPlayer
- Libmpdemux — demultiplexing library from MPlayer
- libpng — PNG image format
- Libpostproc — video post-processing library from FFmpeg
- libpq — PostgreSQL client
- LibreSSL — fork of OpenSSL for TLS
- Librsb — parallel library for sparse matrix computations
- Librsvg — SVG rendering library
- libsndfile — reading and writing audio files
- libsodium — easy-to-use cryptography library
- Libswscale — image scaling and colorspace conversion library
- LibTIFF — TIFF image handling library
- Libusb — USB device access library
- Libuv — asynchronous I/O and event loop library
- LibVLC — media player engine from VLC
- LibVNCServer — implementation of the VNC server protocol
- Libvpx — VP8 and VP9 video codec library
- Libwww — early World Wide Web protocol library from W3C
- libxml2 — XML parsing
- Libxslt — XSLT library for the GNOME Project
- libzip — ZIP archives
- Lightning Memory-Mapped Database — fast key–value database engine
- LittleCMS — open-source color management system
- LZ4 — fast lossless compression algorithm
- LZFSE — compression library developed by Apple
- MatrixSSL — lightweight TLS implementation
- Mbed TLS — portable cryptography and TLS library
- MediaLib — Sun Microsystems library for multimedia processing
- Mesa — OpenGL and Vulkan graphics library
- Microwindows — small windowing system for embedded devices
- Ming — library for generating SWF (Flash) files
- Mongoose — embedded web server and networking library
- Mpg123 — MP3 audio decoding library
- MPIR — multiple-precision arithmetic library
- MsQuic — Microsoft implementation of the QUIC transport protocol
- MuJoCo — physics engine for robotics and control
- Mustache — logic-less templating library
- Ncurses — terminal control library
- Nettle — low-level cryptography library
- Newt — text-based user interface library
- Netpbm — graphics conversion and processing library
- Nghttp2 — implementation of the HTTP/2 protocol
- Oniguruma — regular expression library
- Open Asset Import Library — library to import/export 3D model formats
- OpenCL — parallel computing API/library
- OpenCV — computer vision
- OpenGL — API for rendering 2D and 3D vector graphics
- OpenGL Utility Library — OpenGL utility functions
- OpenJPEG — JPEG 2000 image codec
- OpenSSL — SSL and TLS protocols and cryptography library
- Pango — layout engine library which works with the HarfBuzz shaping engine for displaying multi-language text
- perf (Linux) — performance analyzing tool
- PCRE — regular expression library
- PROJ — library for map projections and coordinate transforms
- Quartz 2D — 2D graphics rendering API for macOS and iOS platforms, part of the Core Graphics framework.
- Raylib — simple library for games and multimedia
- Redland RDF Application Framework — RDF data storage library
- S2n-tls — TLS implementation from AWS
- Setcontext — context switching library functions
- SDL — Simple DirectMedia Layer
- systemd — system and service manager libraries for Linux
- Tk — GUI widgets for building graphical user interfaces
- VDPAU — video decoding acceleration API
- Vorbis — audio compression codec library
- VTD-XML — high-performance XML parser
- Wimlib — library for handling Windows Imaging Format disk images
- Windows.h — base Windows API header file
- WolfSSH — lightweight SSH library
- WolfSSL — lightweight SSL/TLS library
- X Toolkit Intrinsics — toolkit library for the X Window System
- x264 — H.264 video codec library
- XCB — C binding for the X Window System protocol
- Xft — font rendering library using FreeType
- Xlib — low-level X Window System API
- XMDF — eXtensible Model Data Format for scientific data
- XMLStarlet — XML command-line toolkit
- zlib — data compression
- Zopfli — data compression library that performs deflate, gzip and zlib data encoding.
- Zstd — fast data compression library
Integrated development environments
[edit]- Anjuta — GNOME IDE
- CLion — cross-platform commercial IDE from JetBrains
- Code::Blocks — cross-platform open-source IDE
- CodeLite — open-source IDE
- Dev-C++
- Eclipse CDT
- Geany — text editor with IDE features
- KDevelop — KDE IDE
- NetBeans
- Qt Creator
- SlickEdit
- Visual Studio
- Xcode
Online IDEs
[edit]- CodeSandbox — online IDE primarily for web development with some C support via containers
- GitHub Codespaces — cloud-based online IDE developed by GitHub
- Google Cloud Shell — browser-based shell and editor that can compile and run C programs
- Replit — browser-based IDE
Compilers
[edit]- Clang — compiler front end for C, C++, and other languages, part of the LLVM project
- Comeau C/C++ — commercial C and C++ compiler for multiple platforms
- GCC (GNU Compiler Collection) — widely used free and open-source compiler supporting C and many other languages
- Intel C Compiler — proprietary optimizing C compiler from Intel
- LCC — lightweight retargetable compiler for ANSI C
- Microsoft C Compiler — Microsoft’s implementation for Windows platforms
- Small-C — early C compiler targeting microcomputers
- SubC – public domain compiler
- Sun C Compiler — Oracle/Sun Microsystems’ C compiler for Solaris
- Tiny C Compiler (TCC) — small, fast C compiler
- Turbo C — Borland’s C compiler for DOS
- Watcom C Compiler — C compiler originally by Watcom, later Open Watcom project
- Zortech C — early commercial compiler with support for C and C++
Build and automation tools
[edit]- CMake — software development tool for building applications via compiler-independent instructions
- GNU Autotools — build automation tools
- GNU Make — automation tool
- Meson — build automation tool for building a codebase
Debugging tools
[edit]- AddressSanitizer — runtime memory error detector
- GDB — GNU Project debugger
- LLDB — LLVM debugger
- Valgrind — debugging and profiling suite
- SlickEdit — IDE and debugger
- strace — diagnostic, debugging, and instructional userspace utility.
- ltrace — debugger and library call tracing tool
Unit testing
[edit]- Check — unit testing framework
- CUnit — unit testing framework
Mathematical libraries
[edit]- Automatically Tuned Linear Algebra Software — high-performance linear algebra routines
- Basic Linear Algebra Subprograms (BLAS) — linear algebra operations library
- Fastest Fourier Transform in the West – discrete Fourier transforms
- GNU MPFR — multiple-precision floating-point library
- GNU Multiple Precision Arithmetic Library (GMP) – arbitrary-precision arithmetic
- Integer set library — mathematical library for manipulating integer sets
- LAPACK — linear algebra library for solving systems of equations
- Libfixmath — fixed-point arithmetic library for embedded systems
- Lis (linear algebra library) – scalable parallel software library to solve discretized linear equations and eigenvalue problems
- Locally Optimal Block Preconditioned Conjugate Gradient (LOBPCG)
- Math Kernel Library – functions include BLAS, LAPACK, ScaLAPACK, sparse solvers, fast Fourier transforms, and vector math.
- OpenBLAS – Linear algebra library for BLAS and LAPACK APIs
- PARI/GP — computer algebra system with number theory libraries
Scientific libraries
[edit]- GNU Scientific Library — numerical library for scientific computing
- Hypre – library of routines for scalable (parallel) solutions of linear systems
- Nrrd — library and file format for n-dimensional raster data to support scientific visualizations and image processing applications
- Portable, Extensible Toolkit for Scientific Computation (PETSc) – Scientific simulation software
- UMFPACK – routines for solving unsymmetric sparse linear systems
Machine learning and artificial intelligence
[edit]- Fast Artificial Neural Network — open-source artificial neural network library
- Darknet — framework for convolutional neural networks, known for YOLO object detection.
Database
[edit]- SQLite — public domain embedded SQL database engine
- libpq — PostgreSQL client library
See also
[edit]- List of C-family programming languages
- List of free software programmed in C
- List of chatbots
- List of C++ software and tools
- List of Java frameworks
- List of JavaScript libraries and Comparison of JavaScript-based web frameworks
- List of Python software
- List of Ruby software and tools
- List of computer books for C
- List of computer programming journals
References
[edit]- https://github.com/oz123/awesome-c
- https://sourceforge.net/directory/libraries/c/?os=windows&os=mac&os=linux