Hi,
Making a "nice" DLL is a bit of work, all
public API needs to be
marked as such, all private API should ideally be static, or gcc
seems to export them anyway, there should probably be a .def file
which usually needs to be touched manually when new public API is
added, and a calling convention should be decided on (I suggest
stdcall) and yeah some libtool options.
There is ./gsm/libosmogsm.map and ./gb/libosmogb.map already.
We usually try to have all internal symbols static already because
there is the same problem with .so file.
osmogsm and gb probably have internal inter-file dependency and that's
why we use map files to define visible symbols.
Cheers,
Sylvain