Skip to main content

IAR Embedded Workbench for RH850 3.20.x

Prebuilt runtime libraries

In this section:

The prebuilt runtime libraries are configured for different combinations of these options:

  • Processor core

  • Size of the double floating-point type

  • Support for position-independent code and read-only data

  • Alignment

  • FPU support

  • Library configuration—Normal or Full.

The linker will automatically include the correct library files and library configuration file. To explicitly specify a library configuration, use the ‑‑dlib_config compiler option. However, the Full library configuration is the only configuration that exists for Libc++. The ‑‑dlib_config compiler option cannot be used to specify another configuration.

Tip

To see which runtime library files that the linker includes, use the linker option ‑‑log libraries, see ‑‑log.

Library filename syntax

The names of the libraries are constructed from these elements:

dl

Specifies the IAR DLIB runtime environment.

rh

Specifies the RH850 microcontroller.

core

Specifies the CPU core:

3 = the RH850 G3 core

4 = the RH850 G4 core

ropi

Specifies the support for position-independent code and read-only data:

n = no support for position-independent code and read-only data

p = support for position-independent code and read-only data

alignment

Specifies the alignment:

4 = 4-byte alignment

8 = 8-byte alignment

size_of_double

Specifies the size of double:

f = 32 bits

d = 64 bits

fpu

Specifies the FPU support:

empty = no FPU

fpu32 = FPU with single floating-point precision

fpu64 = FPU with double floating-point precision

lib_config

Specifies the library configuration:

n = Normal

f = Full

debug_io

Specifies the support for C-SPY emulated I/O:

d = support for C-SPY emulated I/O

n = no support for C-SPY emulated I/O

You can find the library object files in the directory rh850\lib and the library configuration files in the directory rh850\inc.

Groups of library files

The libraries are delivered in groups of library functions:

Library files for C library functions

These are the functions defined by Standard C, for example functions like printf and scanf.

The names of the library files are constructed in the following way:

dlrh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}.a

which more specifically means

dlrh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}.a

Example: dlrh3p8dfpu64n.a

Library files for C++11 library functions

These are the functions defined by C++11, compiled with support for Standard C++.

The names of the library files are constructed in the following way:

dlpprh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}.a

which more specifically means

dlpprh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}.a

Example: dlpprh3p8dfpu64n.a

Library files for C++17 library functions

These are the functions defined by C++17, compiled with support for Standard C++.

The names of the library files are constructed in the following way:

dllibcpprh{core}{ropi}{alignment}{size_of_double}{fpu}.a

which more specifically means

dllibcpprh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}.a

Example: dllibcpprh3p8dfpu64.a

Library files for C++ runtime library functions

These are the runtime functions needed for C++, used for both the Libc++ and the DLIB C++ libraries.

The names of the library files are constructed in the following way:

dlpprtrh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}.a

which more specifically means

dlpprtrh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}.a
Library files for C-SPY emulated I/O

These are functions for C-SPY emulated I/O.

The names of the library files are constructed in the following way:

dbgrh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}}{debug_io}.a

which more specifically means

dbgrh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}{d|n}.a

Example: dbgrh3n4ffpu32fn.a

Library files for thread support

These are the functions for thread support.

The names of the library files are constructed in the following way:

thrh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}.a

which more specifically means

thrh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}.a

Example: thrh3p8dfpu32n.a

Library files with support for timezone and daylight saving time functionality

These are the functions with support for timezone and daylight saving time functionality.

The names of the library files are constructed in the following way:

tzrh{core}{ropi}{alignment}{size_of_double}{fpu}{lib_config}.a

which more specifically means

tzrh{3|4}{n|p}{4|8}{f|d}{|fpu32|fpu64}{n|f}.a

Example: tzrh3n8dfpu32n.a