12.30 --cppinit, --no_cppinit

Enables the linker to use alternative C++ libraries with a different initialization symbol if required.

Syntax

--cppinit=symbol

Where symbol is the initialization symbol to use.

Usage

If you do not specify --cppinit=symbol then the default symbol __cpp_initialize__aeabi_ is assumed.

--no_cppinit does not take a symbol argument.

Effect

The linker adds a non-weak reference to symbol if any static constructor or destructor sections are detected.

For --cppinit=__cpp_initialize__aeabi_, the linker processes R_ARM_TARGET1 relocations as R_ARM_REL32, because this is required by the __cpp_initialize__aeabi_ function. In all other cases R_ARM_TARGET1 relocations are processed as R_ARM_ABS32.

--no_cppinit means do not add a reference.

Non-ConfidentialPDF file icon PDF versionARM DUI0474M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.