Newlib
Newlib is a C standard library implementation intended for use on embedded systems. It is a conglomeration of several library parts, all under free software licenses that make them easily usable on embedded products.
Original author(s) | Cygnus Support |
---|---|
Developer(s) | Red Hat |
Stable release | 3.3.0
/ January 22, 2020[1] |
Repository | |
Operating system | Cross-platform |
Type | Runtime library |
License | Various MIT/BSD-like licenses |
Website | www |
It was created by Cygnus Support as part of building the first GNU cross-development toolchains. It is now maintained by Red Hat developers Jeff Johnston and Corinna Vinschen, and is used in most commercial and non-commercial GCC ports for non-Linux embedded systems.
System Calls
The section System Calls[2] of the Newlib documentation describes how it can be used with many operating systems. Its primary use is on embedded systems that lack any kind of operating system; in that case it calls a board support package that can do things like write a byte of output on a serial port, or read a sector from a disk or other memory device.
Inclusion
Newlib is included in commercial GCC distributions by Atollic, CodeSourcery, Code Red, KPIT, Red Hat and others, and receives support from major embedded-processor architecture vendors such as ARM and Renesas. It is used as the standard C library in Cygwin, as well as being one standard C library among several for AmigaOS 4.
As of 2007, devkitARM, a popular toolchain for programming homebrew software for Nintendo DS, Game Boy Advance systems and the standard PlayStation Portable homebrew SDK include Newlib as their C library, as well as devkitPPC, a popular Wii and GameCube homebrew development platform. The Open-R SDK for Sony AIBO is also based on Newlib on top of the non-Unix Aperios.
As of 2013, Google Native Client SDK (NaCl) includes Newlib as the default C library over glibc.[3]
References
- "Newlib releases".
- System Calls, The Red Hat newlib C Library
- "Native Client: Getting Started Tutorial". Retrieved 16 February 2013.
Further reading
- von Hagen, William L. (2006). The Definitive Guide to GCC, Second Edition. Berkeley, CA: Apress. pp. 289–290. ISBN 1-59059-585-8.
External links
- Newlib mailing list
- Embedding with GNU: Newlib, By Bill Gatliff, 2001-12-28, Embedded.com at the Wayback Machine (archived September 29, 2007)