ID Number: Q83090
3.17 3.18 3.20 | 3.17 3.18
MS-DOS | OS/2
buglist3.17 buglist3.18 buglist3.20
Summary:
PROBLEM ID: LIB9204001
SYMPTOMS
The Microsoft Library Manager (LIB) can be used to merge import
libraries, created with IMPLIB, into larger import libraries. This
may be useful when IMPLIB runs into capacity limits while trying to
create one large import library. However, if you use LIB to merge
multiple import libraries and use default options, the resulting
import library will have an invalid extended dictionary.
RESOLUTION
Import libraries should not have extended dictionaries. You can use
the /NOE switch to avoid the generation of an invalid extended
dictionary when merging import libraries.
STATUS
Microsoft has confirmed this to be a problem in LIB versions 3.17,
3.18, and 3.2. We are researching this problem and will post new
information here as it becomes available.
More Information:
LINK uses the extended dictionary to speed up library searching. For
example, if a function in module A of a library calls functions in
module B and module C of the same library, the extended dictionary
informs LINK, so that if your program requires module A from the
library, LINK pulls in modules A, B, and C all at once. This way, LINK
does not have to search the library again to resolve references from
module A to functions in modules B and C.
In import libraries, modules do not contain any code; they only
contain references to DLLs. Thus, import library modules do not
contain function calls or external references to other modules.
Because there are no cross dependencies between modules, the extended
dictionary for an import library need not contain anything.
Additional reference words: 3.20