A SERVICE OF

logo

CAVR-4
Part 1. Using the compiler
The DLIB runtime environment
55
SITUATIONS THAT REQUIRE LIBRARY BUILDING
Building a customized library is complex. You should therefore carefully consider
whether it is really necessary.
You must build your own library when:
There is no prebuilt library for the required combination of compiler options or
hardware support
You want to define your own library configuration with support for locale, file
descriptors, multibyte characters, et cetera.
For information about how to build a customized library, see Building and using a
customized library, page 62.
LIBRARY CONFIGURATIONS
It is possible to configure the level of support for, for example, locale, file descriptors,
multibytes. The runtime library configuration is defined in the library configuration file.
It contains information about what functionality is part of the runtime environment. The
configuration file is used for tailoring a build of a runtime library, as well as tailoring the
system header files used when compiling your application. The less functionality you
need in the runtime environment, the smaller it is.
The following DLIB library configurations are available:
In addition to these configurations, you can define your own configurations, which
means that you must modify the configuration file. Note that the library configuration
file describes how a library was built and thus cannot be changed unless you rebuild the
library. For further information, see Building and using a customized library, page 62.
The prebuilt libraries are based on the default configurations, see Table 15, Prebuilt
libraries, page 57. There is also a ready-made library project template that you can use
if you want to rebuild the runtime library.
Library configuration Description
Normal DLIB No locale interface, C locale, no file descriptor support, no multibyte
characters in printf and scanf, and no hex floats in strtod.
Full DLIB Full locale interface, C locale, file descriptor support, multibyte
characters in printf and scanf, and hex floats in strtod.
Table 13: Library configurations