Mail Archives: djgpp-workers/2003/01/19/21:06:10
@c -----------------------------------------------------------------------------
@node dxegen, , , Top
@chapter dxegen
Usage: @code{dxegen} @file{outfile.dxe} @code{symbol} @file{infile.o} [@file{infile2.o} ... -lgcc -lc]
@code{dxegen} is a utility which allows you to create files which contain
dynamically loadable code.
The image must be self-contained, and it cannot reference symbols from the
main image. As a consequence, you cannot do I/O and some other functions
directly from a DXE loaded image.
Constructors, destructors, and C++ exceptions do not work.
There is a single entry point (subroutine or data block) returned. This
can be a vector of routines you have created.
@file{outfile.dxe} is the name you want to contain your dynamic load code.
@code{symbol} is the procedure name (or data structure) you want a pointer to.
You must add an initial underscore for most symbols created from C.
@file{input.o} is created with GCC from your source. Additional arguments
on the command line (.o and .a files; or other ld options) are passed to
ld to resolve references to build your code.
The floating point emulator code provided by DJGPP is stored in a DXE.
See the documentation of `_dxe_load' in the library docs, for details on
how to load the dynamic code ("info libc alpha _dxe_load" from the DOS prompt).
- Raw text -