I have just recently uploaded some fixes to the cvs repository for the following:

Requirements for building loadable OpenDX modules in the Cygwin environment.

Loadable modules on the Windows platform have been possible since OpenDX was released. There are many intricate operations that must be performed, but those operations have been incorporated into the build operation since OpenDX 4.2.

Building OpenDX under the Cygwin environment has not gotten the same attention to detail due to the lack of funding or interest. Loadable modules have never been tested by any of the major OpenDX players.

VIS, Inc. was approached by a University-based research group to provide this functionality for one of their software projects.

After a thorough investigation, here is what we have found and have since added the appropriate functionality within the build environment to allow for loadable modules within Cygwin/OpenDX.

Loadable modules within Cygwin must be compiled as a Window's .dll. There are several things that must be set up within the .dll to allow proper interaction between it and the dxexec executable. This assumes that the cygwin/gcc environment is being used.

1. The source files for loadable modules must be compiled with the -shared flag.

2. The dxexec must be compiled to export all symbols that may be used by the loadable module. These include the entire DX library.

3. The linker when linking the dxexec must produce the link table that can then be used to link to the loadable module. This gives the entry points of all the functions in the DX library (within the executable) to the loadable module. This is done with the --out-implib link option (done automatically during a build).

3. The entry point must be defined when linking the loadable module with the -e link option.

4. To produce the dll, all the source objects for the loadable module, and the link table for the dxexec must be linked together.

All of the build processes have been updated to reflect these requirements and the Makefile's produced by the module builder have been dramatically changed to reflect these requirements.



--
.............................................................................
David L. Thompson                   Visualization and Imagery Solutions, Inc.
mailto:[EMAIL PROTECTED]    5515 Skyway Drive, Missoula, MT 59804
                                    Phone : (406)756-7472

Reply via email to