The Embedded C support library (embc) provides common utilities useful for
embedded systems that are often not included in an RTOS or the standard
C library. This library is intended for use by software developers producing
firmware for embedded devices based upon microcontrollers. The library can
also be used on microprocessors as a lightweight supporting library.
The EMBC library is available under the permissive Apache 2.0 license.
As of Feb 2017, the EMBC library API is not yet stable and subject to change without notice.
The embc library uses CMake to generate the project make files.
Since EMBC is a library primarily targeted at embedded microcontrollers, you will likely want to include the EMBC source code in your project. Projects using CMake can use ExternalProject_Add to include EMBC. Other build systems will likely need to include the source files directly. Consider using git subtrees or git submodules. If not using cmake, you will need to manually create the embc/config.h file.
First install the build tools for your system.
sudo apt-get install build-essential cmake
Then compile the EMBC library:
cd PROJECT_DIRECTORY
mkdir build && cd $_
cmake ../
cmake --build .
ctest
The EMBC library is available under the permissive Apache 2.0 license.
The embc library includes all third-party dependencies in the third-party
directory. The dependencies are built along with the EMBC project.
These third-party libraries are provided under their own
licenses
The EMBC API is documented using doxygen. This documentation will eventually be present on github. For now, you will need to generate the documentation locally.
For a history of changes, see the changelog.
Several alternative libraries to embc exist that you can consider.
Random number generation: