Main  /  Edit  /  History  /   /  Users Area

CppCMS For embedded systems

General

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

General

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.

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,

Notes:

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

About

Wiki++ is a wiki engine powered by CppCMS web development framework.

Mirrors

Hosted By

SourceForge.net Logo


Navigation

Main Page


Valid CSS | Valid XHTML 1.0