Small Device C Compiler

The Small Device C Compiler (SDCC) is a free-software, partially retargetable[1] C compiler for 8-bit microcontrollers. It is distributed under the GNU General Public License. The package also contains an assembler, linker, simulator and debugger. As of March 2007, SDCC is the only open-source C compiler for Intel 8051-compatible microcontrollers.[2][3][4][citation needed] In 2011 the compiler was downloaded on average more than 200 times per day.[5]

Small Device C Compiler
Developer(s)Sandeep Dutta and others
Stable release
4.3.0 / July 7, 2023; 11 months ago (2023-07-07)
Operating systemMicrosoft Windows, macOS, GNU/Linux
TypeC compiler

Supported hosts


Sources, documentation, and binaries are available for Linux (32-bit and 64-bit), macOS (PPC and 64-bit), and Windows (32-bit and 64-bit).

Supported targets


The following include binary compatible derivatives:

Work in progress:


  • AVR microcontrollers used to be a supported target, but was made obsolete by avr-gcc in 2010 (SDCC 3.0.0).

See also

  • Z88DK - C compiler for Z80-based systems
  • cc65 - C compiler for 6502/65C02 systems


  1. ^ Rainer Leupers, Peter Marwedel: "Retargetable Compiler Technology for Embedded Systems: Tools and Applications", page 126. Springer, 2001
  2. ^ According to a Google search for: 8051 open source C compiler
  3. ^ Lewin Edwards "Open-Source Robotics and Process Control Cookbook: Designing and Building Robust, Dependable Real-time Systems". 2011. p. 15.
  4. ^ De-Shuang Huang, Phalguni Gupta, Xiang Zhang, Prashan Premaratne. "Emerging Intelligent Computing Technology and Applications". 2012. p. 383.
  5. ^ SourceForge. "Usage Statistics For Small Device C Compiler". Retrieved 2010-02-16.
  6. ^ Padauk website
  7. ^ "SDCC - Small Device C Compiler". Retrieved 2013-01-20.