Changes between Initial Version and Version 1 of Ticket #5116
- Timestamp:
- Jun 14, 2013, 4:44:59 AM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #5116 – Description
initial v1 3 3 Details about why it happens and how to fix it follow. 4 4 5 GDAL marks its classes for __declspec(dllexport)even in the executable that links against it. It manifests in that all its inline functions, including those of std::string, get compiled in and exported from our executables. This causes import libraries being created for our executables, a bloat of their *export* tables, binary sizes and compilation times.5 GDAL marks its classes for {{{__declspec(dllexport)}}} even in the executable that links against it. It manifests in that all its inline functions, including those of std::string, get compiled in and exported from our executables. This causes import libraries being created for our executables, a bloat of their *export* tables, binary sizes and compilation times. 6 6 7 Simply defining CPL_DLL to __declspec(dllimport)does not work because then it clashes with std::string members being "already deined in" both, GDAL import libs and our executables.7 Simply defining CPL_DLL to {{{__declspec(dllimport)}}} does not work because then it clashes with std::string members being "already deined in" both, GDAL import libs and our executables. 8 8 9 9 What should be done: