Apache Celix is an implementation of the OSGi specification] adapted to C and C++ (C++11). It is a provides a framework to develop (dynamic) modular software applications using component and/or service-oriented programming.
For information how to build Apache Celix see Building Apache Celix
Introduction to Apache Celix
For an introduction into Apache Celix see Apache Celix Intro
Getting Started with Apache Celix
For a guide how to start writing your own bundles and services see Getting Started Guide