Microsoft KB Archive/44896

From BetaArchive Wiki
Knowledge Base

Combined Library Much Larger than Components

Article ID: 44896

Article Last Modified on 10/23/2003


  • Microsoft LIB for MS-DOS 3.1
  • Microsoft LIB for MS-DOS 3.11
  • Microsoft LIB for MS-DOS 3.17
  • Microsoft LIB for MS-DOS 3.18
  • Microsoft LIB for MS-DOS 3.2
  • Microsoft LIB for MS-DOS 3.20.010
  • Microsoft LIB for MS-DOS 3.31
  • Microsoft LIB for MS-DOS 3.4
  • Microsoft LIB for OS/2 3.1
  • Microsoft LIB for OS/2 3.11
  • Microsoft LIB for OS/2 3.17
  • Microsoft LIB for OS/2 3.2

This article was previously published under Q44896


If you use LIB.EXE to combine your libraries with a third-party library, the resultant library may be much larger than expected. For example:

LIB1.LIB 5K bytes
LIB2.LIB 250K bytes

LIB1.LIB + LIB2.LIB = 305K bytes


This size difference may be the result of different page sizes among the libraries being combined. The page size of a library affects the alignment of modules stored in the library. When libraries with different page sizes are combined, the resultant library uses the largest page size from the constituent libraries. Thus, the actual increase in file size represents wasted space between modules in the library. To reduce the amount of wasted space, you should specify a smaller page size for the new library. This may be accomplished by using the library manager as follows:


This sets the page size for the library BIG.LIB to 16 bytes.

As indicated in the library manager documentation, the page size must be an integer power of 2 from 16 to 32,768 bytes.

Additional query words: kbinf 3.20

Keywords: kb16bitonly KB44896