Non-Confidential | ![]() | DUI0803J | ||
| ||||
Home > Accessing and Managing Symbols with armlink > Access symbols in another image > Symdefs file format |
A symdefs file defines symbols and their values.
The file consists of:
The identification line in a symdefs file comprises:
#<SYMDEFS>#
, which must be the first 11 characters in the file for
the linker to recognize it as a symdefs file.Linker version information, in the format:
ARM Linker,
vvvvbbb
:
Date and time of the most recent update of the symdefs file, in the format:
Last Updated:
day month date hh:mm:ss year
For example, for version 6.3, build 169:
#<SYMDEFS># ARM Linker, 6030169: Last Updated: Thu Jun 4 12:49:45 2015
The version and update information are not part of the identifying string.
You can insert comments manually with a text editor. Comments have the following properties:
#<SYMDEFS>#
. This comment is inserted by
the linker when the file is produced and must not be manually deleted.;
) or hash (#
)
is a comment. ;
) or hash (#
) after the first non-whitespace character does not
start a comment.The symbol information is provided on a single line, and comprises:
The linker writes the absolute address of the
symbol in fixed hexadecimal format, for example,
. If you
edit the file, you can use either hexadecimal or decimal formats for the address
value.0x00008000
A single letter to show symbol type:
A32 code (AArch32 only)
T32 code (AArch32 only)
This example shows a typical symdefs file format:
#<SYMDEFS># ARM Linker, 6030169: Last Updated: Date
;value type name, this is an added comment
0x00008000 A __main
0x00008004 A __scatterload
0x000080E0 T main
0x0000814D T _main_arg
0x0000814D T __argv_alloc
0x00008199 T __rt_get_argv
…
# This is also a comment, blank lines are ignored
…
0x0000A4FC D __stdin
0x0000A540 D __stdout
0x0000A584 D __stderr
0xFFFFFFFD N __SIG_IGN