Skip to content

Standard C and C++ Library Support for Circle

License

Notifications You must be signed in to change notification settings

tizilogic/circle-stdlib

 
 

Repository files navigation

circle-stdlib

Status badge for master branch Status badge for develop branch

Overview

The goal of this project is to provide C and C++ standard library support for the Raspberry Pi bare metal environment Circle.

Newlib is used as the standard C library. The fork circle-newlib contains the changes for building Newlib in combination with Circle.

mbed TLS can optionally be used for TLS connections in Circle (call configure with --opt-tls, see also the README file for circle-mbedtls).

Getting Started

Prerequisites

Building the Libraries

git clone --recursive https://github.com/smuehlst/circle-stdlib.git
cd circle-stdlib
./configure
make

The configure script has the following options:

$ ./configure -h
usage: configure [ <option> ... ]
Configure Circle with newlib standard C library and mbed TLS library.

Options:
  -d, --debug                    build with debug information, without optimizer
  -h, --help                     show usage message
  -n, --no-cpp                   do not support C++ standard library
  --opt-tls                      build with mbed TLS support
  -p <string>, --prefix <string> prefix of the toolchain commands (default: arm-none-eabi-)
  --qemu                         build for running under QEMU in semihosting mode
  -r <number>, --raspberrypi <number>
                                 Circle Raspberry Pi model number (1, 2, 3, 4, default: 1)
  --softfp                       use float ABI setting "softfp" instead of "hard"
  -s <path>, --stddefpath <path>
                                 path where stddef.h header is located (only necessary
                                 if  script cannot determine it automatically)

To clean the project directory, the following commands can be used:

make clean
make mrproper   # removes the configuration too

Building the Samples

make build-samples

Release History

See CHANGELOG.md.

License

This project is licensed under the GNU GENERAL PUBLIC LICENSE Version 3 - see the LICENSE file for details

Acknowledgements

About

Standard C and C++ Library Support for Circle

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 49.5%
  • C++ 48.9%
  • Makefile 1.6%