Apache Celix aims to be support a broad range of UNIX platforms.
Currently the continuous integration build server builds and tests Apache Celix for:
The following packages (libraries + headers) should be installed on your system:
For debian based systems (apt), the following command should work:
#required for celix framework and default bundles sudo apt-get install -yq --no-install-recommends \ build-essential \ curl \ uuid-dev \ git \ libjansson-dev \ libcurl4-openssl-dev \ default-jdk \ cmake \ libffi-dev \ libxml2-dev #required if the ZMQ PubSubAdmin option (BUILD_PUBSUB_PSA_ZMQ) is enabled sudo apt-get install -yq --no-install-recommends \ libczmq-dev #required if the ENABLE_TESTING option is enabled sudo apt-get install -yq --no-install-recommends \ libcpputest-dev #The installed cmake version for Ubuntu 18 is older than 3.14, #use snap to install the latest cmake version snap install --classic cmake
For Fedora based systems (dnf), the following command should work:
sudo dnf group install -y "C Development Tools and Libraries" sudo dnf install \ cmake \ make \ git \ java \ libcurl-devel \ jansson-devel \ libffi-devel \ libxml2-devel \ libuuid-devel
For OSX systems with brew installed, the following command should work:
brew update && \ brew install lcov libffi cmake && \ brew link --force libffi
To get started you first have to download the Apache Celix sources. This can be done by cloning the Apache Celix git repository:
#Create a new workspace to work in, e.g: mkdir ${HOME}/workspace export WS=${HOME}/workspace cd ${WS} #clone the repro git clone --single-branch --branch master https://github.com/apache/celix.git
Apache Celix uses CMake as build system. CMake can generate (among others) makefiles.
cd ${WS}/celix mkdir build cd build cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo .. make
With use of CMake, Apache Celix makes it possible to edit build options. This enabled users, among other options, to configure a install location and select additional bundles. To edit the options use ccmake or cmake-gui. For cmake-gui an additional package install can be necessary (Fedora: dnf install cmake-gui
).
cd ${WS}/celix/build ccmake . #Edit options, e.g. enable BUILD_REMOTE_SHELL to build the remote (telnet) shell #Edit the CMAKE_INSTALL_PREFIX config to set the install location
For this guide we assume the CMAKE_INSTALL_PREFIX is /usr/local
.
cd ${WS}/celix/build make sudo make install
If Apache Celix is successfully installed running
celix
should give the following output: “Error: invalid or non-existing configuration file: ‘config.properties’.No such file or directory”.
For more info how to build your own projects and/or running the Apache Celix examples see Getting Started.