🌐
Llvm
libc.llvm.org
LLVM-libc
LLVM-libc is a from-scratch implementation of the C standard library, built as part of the LLVM project.
🌐
GitHub
github.com › llvm › llvm-project
GitHub - llvm/llvm-project: The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. · GitHub
4 days ago - C-like languages use the Clang frontend. This component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode -- and from there into object files, using LLVM. Other components include: the libc++ C++ standard library, the LLD linker, and more.
Starred by 39K users
Forked by 17.7K users
Languages   LLVM 41.2% | C++ 30.3% | C 12.4% | Assembly 11.5% | MLIR 1.6% | Python 0.8%
Discussions

Is LLVM libc good enough for desktop usage?
no. check their website, a lot of stuff isnt implemented yet. More on reddit.com
🌐 r/cpp
10
16
July 24, 2025
What would it take to get llvm libc to work on macos like it does on linux? and is there interest to make it happen? - C - LLVM Discussion Forums
Issues such as this mention lack of system call support as the hindrance to running libc in full host build mode. Is that it? What other issues need to be taken care of to get it running? Asking this as I recently migrated from an x86 machine and would like to work on libc from my macbook. More on discourse.llvm.org
🌐 discourse.llvm.org
0
October 8, 2025
A proposal to start “llvm-libc” (2020)
Lack of ABI stability sounds terrifying as an application developer. My other immediate thought was "how will this interact with systems where the OS-provided libc is the only stable way to e.g. make syscalls", and "Layering Over Another libc" addresses this. More on news.ycombinator.com
🌐 news.ycombinator.com
83
183
December 9, 2021
printf - What standard C library does Clang use? glibc, its own, or some other one? - Stack Overflow
But for LLVM/Clang I'm not sure. I've Googled to try to find if it comes with its own implementation of the whole standard C library, or whether they also use glibc. Surprisingly, all I can find is a recent article discussing that Google is considering writing a new libc for LLVM. More on stackoverflow.com
🌐 stackoverflow.com
🌐
LLVM
releases.llvm.org › 12.0.0 › docs › Proposals › LLVMLibC.html
“llvm-libc” C Standard Library — LLVM 12 documentation
April 15, 2021 - Ability to layer this libc over the system libc if possible and desired for a platform. Provide C symbols as specified by the standards, but take advantage and use C++ language facilities for the core implementation. Provides POSIX extensions on POSIX compliant platforms. Provides system-specific extensions as appropriate. For example, provides the Linux API on Linux. Vendor extensions if and only if necessary. Designed and developed from the start to work with LLVM tooling and testing like fuzz testing and sanitizer-supported testing.
🌐
LLVM
llvm.org › devmtg › 2022-11 › slides › Tutorial1-UsingLLVM-libc.pdf pdf
Using LLVM’s libc Guillaume Chatelet Michael Jones Siva Chandra Tue Ly
Use system headers and system libc for missing functions. ... Use LLVM libc’s headers and only functions provided by LLVM’s libc.
🌐
Llvm
libcxx.llvm.org
“libc++” C++ Standard Library — libc++ documentation
Libc++ provides full support for C++11 and C++14, and provides most of newer standards with a few omissions. The conformance status of the library’s tip is tracked in real-time using this page. The conformance status of this release is described in the pages below: ... First please review our Developer’s Policy and Getting started with LLVM.
🌐
Llvm
libc.llvm.org › getting_started.html
Getting Started — The LLVM C Library
$ clang -nostdinc -nostdlib hello.c -I libc/include \ -I $(clang -print-resource-dir)/include libc/startup/linux/crt1.o \ libc/lib/libc.a $ ./a.out hello world · This was what we call a “full build” of llvm-libc.
🌐
Llvm
libc.llvm.org › gpu › using.html
Using libc for GPUs - The LLVM C Library
The search paths for the include ... C library for more information. The installation also provides libc.bc which is a single LLVM-IR bitcode blob that can be used instead of the static library....
🌐
Llvm
libc.llvm.org › full_host_build.html
Full Host Build - The LLVM C Library
For example, building a Linux x86-64 libc on a Linux x86-64 host. The host has a working and recent Clang toolchain. Clang 21 has been tested. Your container is using Debian Testing or a derived distribution. Other distributions likely work but the package names and paths may differ. You have root access to your machine to set up the compiler wrapper. For more comprehensive instructions on setting up a sysroot, see the official LLVM guide.
Find elsewhere
🌐
Llvm
libc.llvm.org › index.html
The LLVM C Library
LLVM-libc is a from-scratch implementation of the C standard library, built as part of the LLVM project.
🌐
GitHub
github.com › llvm › llvm-project › tree › main › libc
llvm-project/libc at main · llvm/llvm-project
LLVM libc ========= This directory and its subdirectories contain source code for llvm-libc, a retargetable implementation of the C standard library. LLVM is open source software.
Author   llvm
🌐
Reddit
reddit.com › r/cpp › is llvm libc good enough for desktop usage?
r/cpp on Reddit: Is LLVM libc good enough for desktop usage?
July 24, 2025 -

Hi, currently I build libcxx and statically link it for all desktop platforms, this ensures that I have the same cxx features everywhere.

I would like to have that with llvm-libc too, basically build llvm-libc then build llvm-libcxx on top of it to have the same consistency for C. Because at least %60 percent of libraries I use are C libraries.

🌐
Wikipedia
en.wikipedia.org › wiki › LLVM
LLVM - Wikipedia
3 weeks ago - The LLVM project includes an implementation of the C++ Standard Library named libc++, dual-licensed under the MIT License and the UIUC license.
🌐
Google Groups
groups.google.com › g › llvm-dev › c › TnzMbasBBw8
[llvm-dev] A libc in LLVM
The project should mesh with the "as a library" philosophy of the LLVM project: even though "the C Standard Library" is nominally "a library," most implementations are, in practice, quite monolithic. The libc should support static non-PIE and static-PIE linking.
🌐
LLVM
llvm.org › devmtg › 2020-09 › slides › Reddy-Libc_Status_Challenges_Future_Plans.pdf pdf
LLVM Libc: Status, Challenges and Future Plans Siva Chandra Reddy Google LLC 1
Clang-tidy checks specific to LLVM libc have been · implemented · ➢ · Protect against including undesired system headers · ➢ · Protect against polluting global namespace · ➢ · They run as part of the build and hence alert developers · about deviant code at development time.
🌐
LLVM Discussion Forums
discourse.llvm.org › runtimes
What would it take to get llvm libc to work on macos like it does on linux? and is there interest to make it happen? - C - LLVM Discussion Forums
October 8, 2025 - Issues such as this mention lack of system call support as the hindrance to running libc in full host build mode. Is that it? What other issues need to be taken care of to get it running? Asking this as I recently migra…
🌐
Hacker News
news.ycombinator.com › item
A proposal to start “llvm-libc” (2020) | Hacker News
December 9, 2021 - Lack of ABI stability sounds terrifying as an application developer. My other immediate thought was "how will this interact with systems where the OS-provided libc is the only stable way to e.g. make syscalls", and "Layering Over Another libc" addresses this.
🌐
Llvm
libc.llvm.org › full_cross_build.html
Full Cross Build - The LLVM C Library
In this recipe, the clang compiler is built automatically before building the libc for the target. First, set up the environment variables for your compiler and target: C_COMPILER=clang CXX_COMPILER=clang++ TARGET_TRIPLE=aarch64-linux-gnu · Then, configure the CMake build for the bootstrap build: cmake \ -B build \ -S llvm \ -G Ninja \ -DCMAKE_C_COMPILER=$C_COMPILER \ -DCMAKE_CXX_COMPILER=$CXX_COMPILER \ -DLLVM_ENABLE_PROJECTS=clang \ -DLLVM_ENABLE_RUNTIMES=libc \ -DLLVM_LIBC_FULL_BUILD=ON \ -DLLVM_RUNTIME_TARGETS=$TARGET_TRIPLE \ -DCMAKE_BUILD_TYPE=Debug
🌐
Llvm
libc.llvm.org › gpu
libc for GPUs - The LLVM C Library
The GPU support for LLVM’s libc project aims to make a subset of the standard C library available on GPU based accelerators.
🌐
Llvm
libc.llvm.org › contributing.html
Contributing to the libc Project - The LLVM C Library
LLVM-libc is being developed as part of the LLVM project so contributions to the libc project should also follow the general LLVM contribution guidelines.