[GRASS5] Re: GRASS - Prototypes and encapsulation

Mike Thomas mthomas at gil.com.au
Sun Oct 15 17:46:56 EDT 2000


Hi all.

> I believe
> that the most important thing will be to allow shared libraries/dynamic
> linking.

I have lately been experimenting with building Grass DLL's under Windows.  I
promised to comment to Markus, and in the end I have little to say in broad
terms other than to pose the question:

Do you want a monolithic library with every library function in it (eg
libgrass.dll), or a small one for each set of functions (eg libvector.dll,
libraster.dll, libdatetime.dll etc)?

If monolithic, then the source code can stay as it is.  If not then a major
reorganisation, particularly in the vector subdirectory, is needed.

Under Windows all symbols need to be resolved at link time for a DLL, even
if only as calls to load other DLL's via interface libraries.  Unfortunately
certain parts of Grass, particularly the Vector subdirectories are
interdependent and have different "prefix" functions mixed into the same
object files.

Another issue is whether it would be possible to separate non-Unix specific
code from Unix specific code, so that either MS Visual C++ or
gcc -mno-cygwin (or maybe even compilers for hand-held/palm computers, for
mobile data entry and GPS work) could be used to compile segments of the
library needed to write a completely new GUI, which would not be dependent
on the fifo system used by d.mon and friends.

Cheers

Mike Thomas.



---------------------------------------- 
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'



More information about the grass-dev mailing list