AWARE [SYSTEMS] Imaging expertise for the Delphi developer
AWare Systems, Imaging expertise for the Delphi developer, Home TIFF and LibTiff Mailing List Archive

LibTiff Mailing List

TIFF and LibTiff Mailing List Archive
March 2007

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date

Contact

The TIFF Mailing List Homepage
This list is run by Frank Warmerdam
Archive maintained by AWare Systems



Valid HTML 4.01!



Thread

2007.03.09 21:20 "Regarding NULL TIFFOpen return on Windows", by W Bradford Paley
2007.03.10 02:45 "Re: Regarding NULL TIFFOpen return on Windows", by Joris Van Damme
2007.03.10 07:52 "Re: Regarding NULL TIFFOpen return on Windows", by W Bradford Paley
2007.03.11 05:51 "Re: Regarding NULL TIFFOpen return on Windows", by Edward Lam
2007.03.12 17:27 "Problem fixed: TIFFOpen() returns NULL on MS VC++", by W Bradford Paley

2007.03.11 05:51 "Re: Regarding NULL TIFFOpen return on Windows", by Edward Lam

On Sat, March 10, 2007 2:52, W Bradford Paley said:
> Wondering whether I was misusing the library was what prompted
> me to find and build that other version. Once I linked with
> that one, TIFFOpen() with the exact same parameters worked fine.

You have probably hit upon CRT Hell (CRT = C Run-Time Library), which is a
variant of DLL Hell. To make a long story short, the libtiff library and
your application must be compiled to use the same CRT library. ie. you
must compile the latest version of libtiff yourself. It's not hard. See:
    http://remotesensing.org/libtiff/build.html#PC
Unfortunately, if you need JPEG or Deflate support, you will also need to
build your own libjpeg and zlib. I just noticed that www.zlib.net has long
FAQ on their own CRT issues:
    http://www.zlib.net/DLL_FAQ.txt
Anyhow, building zlib and libjpeg are not that hard either. You just need
some patience. :)

The long explanation: MSVC .Net 2003 and MSVC 2005 use different,
incompatible versions of the CRT library. I'm guessing that you're using
MSVC 2005 and GnuWin32 is using MSVC .Net 2003. It's a general mess right
now from my personal vantange point. For some info, you this link also has
some more info:
    http://msdn2.microsoft.com/en-us/library/ms235460(VS.80).aspx

Regards,
-Edward