06.02.2013 Views

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

BPABI and SysV shared libraries and executables<br />

10.16 Changes to command-line defaults with <strong>the</strong> SysV memory model<br />

10.16.1 See also<br />

The <strong>ARM</strong> <strong>Compiler</strong> <strong>toolchain</strong> does not provide shared libraries containing <strong>the</strong> C and C++<br />

system libraries. The intended usage model of <strong>the</strong> System V (SysV) support is to use <strong>the</strong> system<br />

libraries that come with <strong>the</strong> platform. For example, in <strong>ARM</strong> Linux this is libc.so.<br />

To use libc.so, <strong>the</strong> linker applies <strong>the</strong> following changes to <strong>the</strong> default behavior:<br />

• --arm_linux sets <strong>the</strong> default options required for <strong>ARM</strong> Linux<br />

• --no_ref_cpp_init is set to prevent <strong>the</strong> inclusion of <strong>the</strong> <strong>ARM</strong> C++ initialization code<br />

• <strong>the</strong> linker defines <strong>the</strong> required symbols to ensure compatibility with libc.so<br />

• --force_so_throw is set which forces <strong>the</strong> linker to keep exception tables.<br />

Reference<br />

<strong>Linker</strong> Reference:<br />

• --arm_linux on page 2-13<br />

• --force_so_throw, --no_force_so_throw on page 2-73<br />

• --ref_cpp_init, --no_ref_cpp_init on page 2-130<br />

• --sysv on page 2-170.<br />

<strong>ARM</strong> DUI 0474C Copyright © 2010-2011 <strong>ARM</strong>. All rights reserved. 10-20<br />

ID080411 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!