|[ < ]||[ > ]||[ << ]||[ Up ]||[ >> ]||[Top]||[Contents]||[Index]||[ ? ]|
Import libraries are a special kind of libraries (`.a') which contains
a number of very small wrappers (just long jumps to the actual functions
inside the dynamic module and two functions:
Initially all jumps are directed to
dlload_MODNAME, thus when you call any
function from a dynamic module it initially arrives to
Then the module is loaded, all jumps are directed to the respective locations
inside the dynamic module, and the last call is restarted.
As you may understand (and mentioned above), this approach does not work with variables. This is one of the drawbacks of this method.
To build a import library you should use the -Y switch on the
command line. The import library can be built from a ready DXE module as well
as `on-the-fly' during DXE generation process. For example, you can do:
dxe3gen -Y libmy.a -o my.dxe one.o two.o three.o
as well as
dxe3gen -o my.dxe one.o two.o three.o dxe3gen -Y libmy.a my.dxe
Both above sequences are equivalent. The -I switch does the same thing as the -Y option and is used if you do not want to have symbols automatically resolved (when they are provided by another DXE, for example).
|webmaster donations bookstore||delorie software privacy|
|Copyright © 2004 by DJ Delorie||Updated Nov 2004|