9.24 --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.
Related reference
9.92 --ref_cpp_init, --no_ref_cpp_init
Related information
Initialization of the execution environment and execution of the application
C++ initialization, construction and destruction
Non-ConfidentialPDF file icon PDF versionARM DUI0377G
Copyright © 2007, 2008, 2011, 2012, 2014, 2015 ARM. All rights reserved.