Difference between revisions of "Compilers"

From D Wiki
Jump to: navigation, search
(Comparison)
(Comparison)
Line 74: Line 74:
 
| ?
 
| ?
 
|---
 
|---
|colspan="4" align="center"|<br/>'''Linux specific'''
+
!colspan="4" align="center"|<br/>'''Linux specific'''
 
|---
 
|---
 
|'''Object file format'''
 
|'''Object file format'''
Line 81: Line 81:
 
| ?
 
| ?
 
|---
 
|---
|colspan="4" align="center"|<br/>'''Mac specific'''
+
!colspan="4" align="center"|<br/>'''Mac specific'''
 
|---
 
|---
 
|'''Object file format'''
 
|'''Object file format'''
Line 88: Line 88:
 
| ?
 
| ?
 
|---
 
|---
|colspan="4" align="center"|<br/>'''Windows specific'''
+
!colspan="4" align="center"|<br/>'''Windows specific'''
 
|---
 
|---
 
|'''Object file format'''
 
|'''Object file format'''

Revision as of 22:02, 23 November 2012


There are currently 3 major D compilers:

DMD »

Digital Mars D compiler
The formal D compiler.

GDC »

GCC D compiler
Fast and open source.

LDC »

LLVM D compiler
Fast and open source.

Which compiler should I use?

If you're a beginner DMD is the recommended choice, as it is the implementation closest to the D Language Specification. Otherwise it depends on what you need, what platforms you intend to develop for, and your personal preferences. GDC and LDC both generate substantially faster binaries than DMD.

Comparison

DMD GDC LDC
Platforms Linux / Mac / FreeBSD / Win Linux / Mac / FreeBSD / Win Linux / Mac / FreeBSD / Win
Installation Automatic ? ?
Architectures i386, amd64 i386, amd64 i386, amd64
Backend DMD GCC LLVM
License ? ? ?
Inline assembler Yes, x86 ? ?
SIMD Partial (?) Partial (?) ?

Linux specific
Object file format ? ? ?

Mac specific
Object file format ? ? ?

Windows specific
Object file format ? ? ?