HP eld Manual page 115

Table of Contents

Advertisement

Output Listings and Error Handling
Cause. You gave options such as -t and -d to specifically provide the starting
addresses for the code and data segments of the program or DLL that you are
building. However, with these starting addresses, the segments overlapped.
Effect. Fatal error (eld immediately stops without creating an output file).
Recovery. Did you need to give these options in the first place? There is usually no
reason to use these options when building a program, and there is usually no reason to
use the -d option at all. But, if this is some special case where you do need to give
these options, and you know why you are doing it, then you should give different
values, so that the segments don't overlap. You can tell from the error message how
big each segment was.
1005 Unresolved reference to <symbol name>.
Cause. .You gave the -alf option, to repeat the process of fixing up references in
an existing program or DLL, but the symbol named in the message did not exist in that
same program or DLL, nor was eld able to find it by looking into other DLL's. This
may occur for many reasons, such as problems with DLL's that other people are
supposed to provide to you, which either they didn't provide or you didn't pass along to
eld when you first built this program or DLL, or "standard" things not set up correctly in
your installation. You also gave an option such as -unres_symbols warn, to say
that eld should not consider this an error situation.
Effect. Warning (eld produces an output file, but it might not be what you intended).
Recovery. You don't necessarily need to do anything. A program can run correctly,
even if it has unresolved references at link time. But, you may prefer that your link be
clean. In that case, look at the names of the symbols that eld said it couldn't find, and
see if they exist somewhere. They may be in DLLs, for example, that eld wasn't
using, so you may need to relink your program or DLL again, supplying the names of
those DLLs. eld will print out informational messages about all the DLLs that it used if
you supply the -verbose option. A symbol in a DLL also needs to be exported from
that DLL for eld to find it. The -unres_symbols option specifies whether eld
should consider unresolved references to be errors, warnings, or neither.
1006 Unresolved reference to <symbol name>.
Cause. You gave the -alf option, to repeat the process of fixing up references in an
existing program or DLL, but the symbol named in the message did not exist in that
same program or DLL, nor was eld able to find it by looking into other DLL's. This
may occur for many reasons, such as problems with DLL's that other people are
supposed to provide to you, which either they didn't provide or you didn't pass along to
eld when you first built this program or DLL, or "standard" things not set up correctly in
your installation. You did not give an option such as -unres_symbols warn, so by
default eld considered this an error situation.
eld Manual—527255-009
6-5
Error Messages

Advertisement

Table of Contents
loading

Table of Contents