You copied the Doc URL to your clipboard.

11.123 --stdlib

Specifies the C++ library to use, and depends on whether or not any C++ using objects are created with ARM® Compiler 5.

Syntax

--stdlib=library_choice

Where library_choice is one of the following:

infer

This is the default. Use this option to have the linker choose the C++ library based on the input objects. If there is at least one object that has been compiled by ARM Compiler 5 with C++ support or a C file that has been compiled with --exceptions then the Rogue Wave C++ libraries are chosen. In all other cases libc++ is used.

legacy_cpplib

Use this option to select the Rogue Wave C++ libraries.

libc++

Use this option to select the libc++ libraries.

Note

The Rogue Wave C++ libraries are deprecated.

Usage

C++ objects compiled with armclang and linked with armlink use libc++ by default. The --stdlib=legacy_stdlib option must be used if Rogue Wave is required. If C++ objects compiled with armclang are mixed with C++ objects compiled with ARM Compiler 5, then --stdlib=libc++ is required.

Compatibility between C++ libraries

The choice of C++ library at link time must match the choice of C++ include files at compile time for all input objects. In practice this means that C++ objects compiled with ARM Compiler 5 are only compatible with C++ objects compiled with ARM Compiler 6 using libc++ if they do not make use of the Rogue Wave C++ library.

Related information

Was this page helpful? Yes No