2.2.2. Specifying an input file list

These options define the input files passed to the linker:

input-file-list

This is a space-separated list of objects or libraries.

You can use libraries in the input file list in the following ways:

  • Specify a library to be added to the list of libraries that is used to extract members if they resolve any non-weak unresolved references. For example, specify mystring.lib in the input file list.

    The standard C or C++ libraries are added to this list implicitly by the linker when it scans the default library directories and selects the closest matching library variants available.

    Note

    Members from the libraries in this list are added to the image only when they resolve an unresolved non-weak reference.

    For more information see Library searching, selection, and scanning.

  • Specify particular members to be extracted from a library and added to the image as individual objects. For example, specify mystring.lib(strcmp.o) in the input file list.

The linker processes the input file list in the following order:

  1. Objects are added to the image unconditionally.

  2. Members selected from libraries using patterns are added to the image unconditionally, as if they were objects. For example, the following command unconditionally adds all a*.o objects and stdio.o from mylib:

    armlink main.o mylib(stdio.o) mylib(a*.o)
    
  3. The standard C or C++ libraries are added to the list of libraries that are later used to resolve any remaining non-weak unresolved references.

--libpath pathlist

This option specifies a list of paths that are used to search for the ARM standard C and C++ libraries.

The default path for the parent directory containing the ARM libraries is specified by the RVCT22LIB environment variable. Any paths specified here override the path specified by RVCT22LIB.

pathlist is a comma-separated list of paths that are only used to search for required ARM libraries. Do not include spaces between the comma and the path name when specifying multiple path names, for example, path1,path2,path3,...,pathn.

This list must end with the parent directory of the ARM library directories armlib and cpplib.

Note

This option does not affect searches for user libraries. Use --userlibpath instead.

See Library searching, selection, and scanning for more information on including libraries.

--scanlib

This option enables scanning of default libraries (the standard ARM C and C++ libraries) to resolve references. This is the default.

--no_scanlib

This option disables the scanning of default libraries.

--userlibpath pathlist

This option specifies a list of paths that are used to search for user libraries.

pathlist is a comma-separated list of paths that are used to search for the required libraries. Do not include spaces between the comma and the path name when specifying multiple path names, for example, path1,path2,path3,...,pathn.

See Library searching, selection, and scanning for more information on including user libraries.

Copyright © 2005 ARM Limited. All rights reserved.ARM DUI 0285B
Non-Confidential