Specifying user libraries when linking

To specify user libraries:

If you do not specify a full path name to a library on the command line, the linker tries to locate the library in the directories specified by the --userlibpath option. For example, if the directory /mylib contains my_lib.a and other_lib.a, add /mylib/my_lib.a to the input file list with the command:

armlink --userlibpath /mylib my_lib.a *.o

If you add a particular member from a library this does not add the library to the list of searchable libraries used by the linker. To load a specific member and add the library to the list of searchable libraries include the library filename on its own as well as specifying library(member). For example, to load strcmp.o and place mystring.lib on the searchable library list add the following to the input file list:

mystring.lib(strcmp.o) mystring.lib


Any search paths used for the ARM standard libraries specified by either the linker command-line option --libpath or the ARMLIB or ARMCCnLIB environment variables are not searched for user libraries.

Show/hideSee also


Linker Reference:

ARM® C and C++ Libraries and Floating-Point Support Reference:

Introducing the ARM Compiler toolchain:

Copyright © 2007-2008, 2011-2012 ARM. All rights reserved.ARM DUI 0377D