Main  /  Edit  /  History  /   /  Users Area

CppCMS For embedded systems


Generally CppCMS can be used as-is for embedded systems. However there are many features that are heavy and targeted for high performance web servers. These options are rather useless for embedded system.

Thus additional build options that make this library optimized for embedded system provided.

They are reduce number of dependencies and make executable significantly smaller.

Changes in Embedded Build

Normal Embedded Build

CGI Mode

Minimal Dependencies

Embedded compilation allows building CppCMS using only following libraries:

Cross Compilation of CppCMS


For cross compilation you should use --host configuration switch according to your platform, for example:

./configure --host=arm-linux-eabi ...
./configure --host=mips-linux-gnu

Do not forget to build boost and cgicc as well. Refer to your platform documentation for cross-compilation instructions.

<a name="Build-Flags:"></a>

Build Flags:

Additional flags:

For example:

./configure --host=arm-linux-gnu --prefix=/usr/arm-linux-gnu CXXFLAGS=-Os --enable-embedded --enable-cgi

Would configure cross compilation make files for ARM platform,


Static Linking

In some cases you want to build your application without dependencies on many shared objects. Thus you can link your application "almost" statically.

Only system libraries like libc, libstdc++, pthreads, rt would be linked dynamically

CGI Only

You can build "almost" static build as following:

g++ hello.o /path/to/libcppcms.a /path/to/libcppcmstranstext.a /path/to/libboost_signals.a /path/to/libboost_regex.a /path/to/libcgicc.a 

With Worker Threads

You can build "almost" static build as following:

g++ hello.o /path/to/libcppcms.a /path/to/libcppcmstranstext.a /path/to/libboost_signals.a /path/to/libboost_regex.a /path/to/libcgicc.a -lrt -lpthread


CppCMS is a web development framework for performance demanding applications.

Support This Project Logo

Поддержать проект

CppCMS needs You


Main Page

Valid CSS | Valid XHTML 1.0