Skip to content
This repository

The LLVM-based D compiler.

Octocat-spinner-32 bash_completion.d Enhance completion path January 20, 2012
Octocat-spinner-32 cmake Add llvm-config-3.5 to search list January 02, 2014
Octocat-spinner-32 dmd2 Add version identifier for Nvidia PTX. March 05, 2014
Octocat-spinner-32 driver Add Krait cpu for detection of ARM architecture version. March 23, 2014
Octocat-spinner-32 gen Fix unresolved reference with shared April 05, 2014
Octocat-spinner-32 ir Remove MSVC crap. January 03, 2014
Octocat-spinner-32 runtime Exclude threadasm.S from build if CMake version is less than 2.8.5. December 08, 2013
Octocat-spinner-32 tests Do not try to emit nested functions with unanalyzed parents. October 13, 2013
Octocat-spinner-32 utils Added a check for vector size to gen_gccbuiltins.cpp. January 06, 2014
Octocat-spinner-32 vcbuild Add latest version of vcbuild directory. June 21, 2013
Octocat-spinner-32 .gitattributes Do not include .travis.yml in release tarballs. December 13, 2012
Octocat-spinner-32 .gitmodules Imported D2 testsuite (v2.060) as submodule. September 07, 2012
Octocat-spinner-32 .travis.yml Travis: Install gcc 4.8 and clang 3.4. March 22, 2014
Octocat-spinner-32 CMakeLists.txt Change compiler options for MSVC. January 12, 2014
Octocat-spinner-32 Doxyfile Added Doxygen file. April 15, 2009
Octocat-spinner-32 LICENSE Merged all licenses into LICENSE for release packaging; updated LDC c… December 16, 2012
Octocat-spinner-32 Renamed README to and added build status from Travis. March 14, 2014
Octocat-spinner-32 Do not generate .di files for druntime modules. March 17, 2013
Octocat-spinner-32 Use shiny new debug libraries. December 06, 2012
Octocat-spinner-32 Use shiny new debug libraries. December 06, 2012
Octocat-spinner-32 Do not generate .di files for druntime modules. March 17, 2013

Build Status

LDC – the LLVM-based D Compiler

The LDC project aims to provide a portable D programming language compiler with modern optimization and code generation capabilities.

The compiler uses the official DMD frontends to support the latest version of D2, and relies on the LLVM Core libraries for code generation.

LDC is fully Open Source; the parts of the code not taken/adapted from other projects are BSD-licensed (see the LICENSE file for details).

Please consult the D wiki for further information:

D1 is no longer available; see the 'd1' Git branch for the last version supporting it.


In-depth material on building and installing LDC and the standard libraries, including experimental instructions for running LDC on Windows, is available on the project wiki, at

If you have a working C++ build environment, CMake, a current LLVM and libconfig++ ( available, there should be no big surprises, though.

Do not forget to make sure all the submodules are up to date:

$ cd ldc
$ git submodule update --init

Some Linux distributions are also packaging a recent version of LDC, so building it manually might not be necessary.


The best way to get in touch with the developers is either via the digitalmars.D.ldc forum/newsgroup/mailing list ( or the #ldc IRC channel on FreeNode.

For further documentation, contributor information, etc. please see the D wiki:

Feedback of any kind is very much appreciated!

Something went wrong with that request. Please try again.