The RESOLVE command matches specific undefined references to a defined global symbol.
is a string, optionally including wildcard characters (either
?), that matches zero or more undefined global symbols. If
does not match any undefined global symbol, the linker ignores the command. The operand can match only undefined global symbols.
is a string, optionally including wildcard characters, that matches zero or more defined global symbols. If
does not match any defined global symbol, the linker ignores the command. You cannot match an undefined reference to an undefined symbol.
RESOLVE is an extension of the existing armlink
option. The difference is that
all undefined references to match one single definition, whereas RESOLVE enables
more specific matching of references to symbols.
The undefined references are removed from the output symbol table.
RESOLVE works when performing partial-linking and when linking normally.
You might have two files
as shown in the following example:
Create a steering file,
RESOLVE MP3* AS MyMP3*.
Enter the following command:
armlink file1.o file2.o --edit ed.txt --unresolved foobar
This command has the following effects:
The references from
MP3_Play()) are matched to the definitions in
MyMP3_Play()respectively), as specified by the steering file
The RESOLVE command in
MP3functions and the
--unresolvedoption matches any other remaining references, in this case,
The output symbol table, whether it is an image or a partial object, does not contain the symbols