ecppc man page

ecppc — compiler for ecpp(7)


ecppc [-bhszvtM] [-s-] [-o filename]  [-n name] [-m mimetype] [--mimetypes filename] [-I dir] [-l log-category] filename

ecppc -bb filename ...


ecppc is the compiler for the ecpp-language. ecpp is a template language, which lets the user embed C++-code  into HTML  for  use  in   tntnet(8). ecppc generates a C++-class from a ecpp template. It can also compile binary data into a C++-class, which makes it possible to integrate them in a tntnet application.



This enables binary-mode. Ecppc does not look for ecpp-tags, but creates a class, which just copies the data


This enables multi-binary-mode. Every binary-file has some overhead, when packed into a tntnet-application. This overhead can be quite significant, when binary-files are small, like small icons in a web application. To reduce this overhead, multiple binaries can be packed into a single class, which removes the per-binary overhead completely.

When the component is called, it uses the path-info-parameter (request.getPathInfo()) from the request, to decide, which binary to send. If no filename matches the path-info, processing is declined. The binaries need not be of same mime-type, since the mime-type is looked automatically from the mime-database by file- extension of the source-file.

-i filename

In multi binary mode (option -bb) filenames can be read from the file specified with this option. This can be useful when the command line gets too long or just for convenience.

-I dir

Search include-files in directory. This option can be passed multiple times. All specified directories are searched in turn for include-files.

-l log-category

Set log category. Default is component.componentname.


Disable generation of #line-directives

-m mimetype

Set mimetype of output. This is the mimetype, sent by the component to the browser in the Content-Type- header. Without this parameter the mimetype is looked up from the mime-database of your system using the file-extension of the source-file.

--mimetypes file

Read mimetypes from file (default: /etc/mime.types).


This disables normal processing and prints just the ecpp-dependencies from this component. The output can be included into a Makefile. Ecpp-dependencies are introduces by the <%include>-tag.

-n name

Set the name of the component. Normally this is derived from the source-file-name by removing the path and .ecpp-extension.

-o filename

Write the generated file to the specified file instead of deriving the filename from the source-file-name.  The outputfilename is normally the source-file where the extension is replaced by .cpp.


Keep path name when deriving name of component from input file name.


Generate singleton. Normally ecppc decides automatically, if the template is suitable for a singleton.  This option force ecppc to generate a singleton.


Do not generate a singleton.


Enable verbose mode. This prints additional information about the processing on the standard-output.


Compress the data in the component. Compressed data is automatically decopressed on first use. This reduces the code-size, but slightly slows down the first call of the component.


This manual page was written by Tommi Mäkitalo

See Also

tntnet(1), ecpp(7), ecppl(1), ecppll(1)

Referenced By

ecpp(7), tntnet(8), tntnet-config(1), tntnet.xml(7).

2006-07-23 Tntnet users guide