Small Device C Compiler

From The Right Wiki
Jump to navigationJump to search
Small Device C Compiler
Developer(s)Sandeep Dutta and others
Stable release
4.4.0 / January 29, 2024; 11 months ago (2024-01-29)
Operating systemMicrosoft Windows, macOS, GNU/Linux
TypeC compiler
LicenseGPL
Websitesdcc.sourceforge.net

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. SDCC is a popular open-source C compiler for microcontrollers compatible with Intel 8051/MCS-51.[2][3][4]

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:

Obsolete:

  • 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

References

  1. Rainer Leupers, Peter Marwedel: "Retargetable Compiler Technology for Embedded Systems: Tools and Applications", page 126. Springer, 2001
  2. "Porting Contiki Operating System to RIEST2430" by Juan Wang, Wei Ma, and Dan Liu, published in "Emerging Intelligent Computing Technology and Applications", 2012, p. 383: "Due to the 8051 MCU’s unique characteristics, there are only a handful of toolchains available. The most noteworthy open source solution is the Small Device C Compiler (SDCC)."
  3. Lewin Edwards "Open-Source Robotics and Process Control Cookbook: Designing and Building Robust, Dependable Real-time Systems", 2005, p. 15: "Worse still, the only halfway decent open-source C compiler for the 8051 (sdcc) is exactly that—only halfway decent."
  4. Lewin A. R. W. Edwards (2006). So, You Wanna be an Embedded Engineer: The Guide to Embedded Engineering, from Consultancy to the Corporate Ladder. p. 51.: "I personally prefer to use the free compiler package, sdcc. This is unquestionably the poor man's choice of 8051 C compilers, ... in any case, sdcc is perfectly adequate for hobbyist, low-volume and/or educational projects."
  5. Padauk website
  6. "SDCC - Small Device C Compiler". Retrieved 2013-01-20.

External links