- put dclspec everywhere in your code
- Use the nice bindexplib utility from ROOT
example of option #2
We use this in Seattle to build our VS2005 projects. I've attached a log file for the compilation of astro.
The key is the special prelink step:
These two commands produce astro.lib, containing the stubs to be linked when creating the dll, with a command like this:
with the [...] for the link options, and a list of all the lib files that the module depends on.
Thus, sequence bindexplib-lib-link takes the set of object files, and creates a lib and dll.