Wiki Roadmap Timeline Tickets New Ticket Source Search Help / Guide About Trac Login
Version 237 (modified by mrmonday, 12 years ago)
--

Table of Contents

LDC has moved to github https://github.com/ldc-developers/ldc

LLVM D Compiler

LDC is a compiler for the D programming Language. It is based on the DMD frontend and uses LLVM as backend. LLVM provides a fast and modern backend for high quality code generation. LDC is released under a BSD license with exceptions for the DMD frontend and code from GDC.

The development takes place mostly on x86-32 and x86-64 Linux and that is where LDC works best. Support for other platforms and architectures is under development, but we are still looking for people to help test and adjust LDC for those platforms!

LDC already compiles a lot of D code, but should still be considered beta quality. Take a look at the tickets to get a better impression on what still needs to be implemented.

We use the DStress based test suite comparing LDC revisions among themselves and to DMD. The tests directory in the sources contain code and instructions.

Project Status and Downloads

See the tickets for more details.

Install instructions

To install LDC, follow our generic install instructions.

Some distributions include premade packages for LDC which come with separate instructions:

Note that these were not created by the LDC developers. Please contact their respective authors if there are issues with these packages.
There are no D2 packages atm..

Documentation

Communication

Feedback is much appreciated. You can contact us via:

If you've found a bug, feel free to report it directly.

Build LDC From Sources [D1/D2]

Set D_VERSION to 1 or 2 to build LDC with D1 or D2 language support.
For a working environment we advise to use the Tango runtime/library for D1
and Druntime/Phobos for D2.

Build Tango From Sources [D1]

Build Phobos and Druntime From Sources [D2]

D binding for LLVM

While not part of the LDC compiler, llvm-c bindings for D can be found in the svn of the Bindings project. These bindings are a wrapper around the LLVM C interface with a few extensions.

Copyright © 2008, LDC Development Team.