12.84 --library=name

Enables the linker to search either a dynamic library or a static library without you having specifying the full library filename on the command-line.

Syntax

--library=name

Where name is the name of the library.

Usage

The linker searches either a dynamic library, libname.so, or a static library, libname.a, depending on whether dynamic library searching is enabled at that point on the command line:

  • If dynamic linking is enabled, the linker searches first for libname.so, and if it is not found then searches for libname.a.
  • If dynamic linking is disabled it links with the static library, libname.a.

If you specify the --[no_]search_dynamic_libraries option, it applies to the following --library options up until the next --[no_]search_dynamic_libraries option.

References to the shared library are added to the image and resolved to the library by the dynamic loader at runtime. The order that references are resolved to libraries is the order that you specify the libraries on the command line. This is also the order that the dependencies are resolved by the dynamic linker. You can specify the runtime location of libraries using the --runpath option.

Default

Dynamic linking is enabled by default. Use the --[no_]search_dynamic_libraries option to control the searching of dynamic or static libraries.

Example

The following example shows how to search for libfoo.so before libfoo.a, but only search for libbar.a:

--arm_linux --shared --fpic --search_dynamic_libraries --library=foo --no_search_dynamic_libraries --library=bar
Non-ConfidentialPDF file icon PDF versionARM DUI0474M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.