2015.06.18 22:32 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Roger Leigh
On 18/06/2015 22:15, Bob Friesenhahn wrote:
Looking over the exported symbols between Unix (FreeBSD/ELF with nm -D) and Windows (the libtiff.def list), there are a lot of missing symbols on Windows. I've attached a list showing which are missing. Would it be possible to update the symbol list for 4.0.4? Some symbols are likely not supposed to be exported on Unix (expecially those without a TIFF or _TIFF prefix) and should probably be ignored.
Linux/FreeBSD/ELF exports all non-static symbols by default and this is usually unwanted. In this case, Windows is ahead of default ELF linkage. I do see at least one new symbol which should have been exposed for Windows.
Which one? Aren't there a few:
TIFFGetConfiguredCODECs (needed to find available codecs)
TIFFReadRGBAImageOriented (all other read variants exported)
TIFFSetCompressionScheme (all other setters exported)
TIFFSwabArrayOfTriples (all other swab variants exported)
TIFFVGetFieldDefaulted (all other field variants exported)
_TIFFCheckRealloc (all other allocation variants exported)
TIFFRasterScanline* (all strip/tile variants exported)
TIFFSetErrorHandlerExt & TIFFSetWarningHandlerExt (?)
These four are *definitely* required:
Without these being exported, it's not possible to link and run the unit
tests and tools. Should all the other custom directory functions be
exported i.e TIFFCheckpointDirectory,TIFFReadCustomDirectory etc.?