Building and Running Your Service Natively
The next step in the binder development process is to build your binder and run it using your native Linux system.
NOTE: This section assumes using the
and completion of the previous steps in this
“Building Microservices Natively”
Building the Service
Move to the cloned
helloworld-binding repository and build the service
using either of the following methods:
cd helloworld-binding mkdir build cd build cmake .. make
Running the Service
You use the Application Framework Binder Daemon (
bind one instance of an application or service to the rest of the system.
In this example, you are binding an instance of
to the rest of the system:
afb-binder --workdir=./package --binding=lib/afb-helloworld-skeleton.so --port=3333 -vvv
The previous command starts
afb-binder and loads the
The daemon is now listening on port 3333 of the
Testing the Service
Refer to the
Test Framework topic in the
“Developer guides” topic.
You can test your
helloworld-binding using the
Examine the generic example describing how to launch the tests suite here. This example can help you understand how to test your helloworld binding instance.
systemd and/or libmicrohttpd
If you encounter an error message similar to the following,
you need to make some changes to your
-- Checking for module 'libmicrohttpd>=0.9.60' -- No package 'libmicrohttpd' found CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:415 (message): A required package was not found Call Stack (most recent call first): /usr/share/cmake/Modules/FindPkgConfig.cmake:593 (_pkg_check_modules_internal) conf.d/app-templates/cmake/cmake.d/01-build_options.cmake:92 (PKG_CHECK_MODULES) conf.d/app-templates/cmake/common.cmake:77 (include) conf.d/cmake/config.cmake:184 (include) CMakeLists.txt:3 (include)
config.cmake file located in
and add a hash character (i.e. #) to the beginning of the “libsystemd>=222”
and “libmicrohttpd>=0.9.60” strings.
Following is an example of the edits:
set (PKG_REQUIRED_LIST json-c #libsystemd>=222 afb-binding #libmicrohttpd>=0.9.60 )
After making these changes, rebuild the service again as described in the “Building the Service” section previously on this page.