
Output Listings and Error Handling
eld Manual—527255-009
6-105
Error Messages
giving a subset of the input files to
eld
each time, and then there would be less
confusion about what is actually going to happen.
Cause.
You gave a
-rename
option, specifying that a symbol should be renamed. A
definition of that symbol (the first symbol name mentioned in the message) did occur in
the file mentioned in the message, so
eld
wanted to rename it (to the second symbol
name mentioned in the message), but there already was a definition of a symbol of that
name in this same input file.
Effect.
Fatal error (
eld
immediately stops without creating an output file).
Recovery.
You can’t have two different symbols of the same name in a linker input file,
and similarly you can’t use this kind of
-rename
option to make things look that way.
Once you have compiled two different symbols into the same object file, you can’t
make the linker think that they are the same symbol. If that was what you wanted to
do, change your source code to use the same name throughout.
Cause.
You have given the
-alf
option, and the file that you specified with this
option is a program. You have also specified the -update_registry or -check_registry
option, which would only be possible if you were updating a DLL, not a program.
Effect.
Fatal error (
eld
immediately stops without creating an output file).
Recovery.
If your intention is to use the
-alf
option to repeat the fixup process on a
program then don’t specify the -check_registry or -update_registry option. If your
intention was to use the
-alf
option on a DLL, then you specified the wrong file to
eld
, because the file that you specified was a program, not a DLL.
Cause.
You specified the
-alf
option, to update a DLL. You also specified the -
check_registry or -update_registry option, to use a private DLL registry to choose new
addresses for the DLL. By default, when
eld
builds a DLL, it puts the data segment
right after the code segment. But, when this DLL was built, the
-d
option was used, to
make the code and data segments come out at some other addresses, so that the data
segment was not immediately after the code segment. On the other hand, private DLL
registries can only be used to manage DLLs that have their data segments
immediately after their code segments.
1585 In <filename>, <symbol name> is defined, and is renamed
to <symbol name>, but that symbol is also already defined in
this file.
1586 Cannot use a DLL registry when running the -alf option
on a program.
1587 Cannot use a DLL registry with the -alf option when the
code and data of the existing DLL are not next to each other.
Summary of Contents for eld
Page 4: ......
Page 8: ...Contents eld Manual 527255 009 iv ...
Page 12: ...What s New in This Manual eld Manual 527255 009 viii Changes to the 527255 005 Manual ...
Page 34: ...Introduction to eld eld Manual 527255 009 1 14 Example of Use ...
Page 54: ...eld Input and Output eld Manual 527255 009 2 20 Using Archives ...
Page 98: ...Other eld Processing eld Manual 527255 009 4 20 Merging Source RTDUs ...
Page 242: ...Output Listings and Error Handling eld Manual 527255 009 6 132 Glossary of Errors ...