2005.08.18 21:51 "[Tiff] win32 libtiff", by Mark R. Olin

2005.09.07 16:44 "RE: [Tiff] win32 libtiff", by Mark R. Olin

Andrey Jeff, Edward and Larry,

I had some other work to do before I revisited my libtiff problem. If you recall I was getting a runtime debug error

"Invalid Address specified to RtlFreeHeap".

Now while the program would run successfully to its conclusion, I do suspect that there was some corruption occuring in the Process Heap.

The move to the newest libtiff version did solve my problem. I purged paths and files of the old 3.6.1 version and remade using the 3.7.3 version source using consistent compiler debug flags as Jeff and Edward advised, and the problem went away. It runs a little faster than before too.

At Larry's request, I downloaded and used the Visual C++ Toolkit 2003 and used the nmake.opt he provided. Since I am using Codewarrior for my app, I needed to get up to speed on using MSVC commandline compiler.

So good job all!

That old tiff-win32 distribution at the gnuwin32 project should be discontinued IMHO.

Thanks,

Mark Olin

> -----Original Message-----

http://gnuwin32.sourceforge.net/packages/tiff-win32.htm,

That is not a home of libtiff, but rather a home of one of the win32 library builds.

The GnuWin32 distribution comes in two versions. The ordinary version uses the standard Unix equivalents, such as fopen and read, for input and output, the other version (Tiff-win32) uses the Win32 API functions, such as CreateFile and ReadFile, for input and output. The ordinary version (Tiff) is more suitable for porting Unix programs, the Win32-API version is more suitable for writing Win32 programs.

Modern libtiff can be built using different I/O interfaces. Both open/read and OpenFile/ReadFile interfaces can be used in your build (switched with the USE_WIN_CRT_LIB option in nmake.opt file). I am recommend using open/read calls (USE_WIN_CRT_LIB is on). You can search the mailing list archive for discussion on this topic.

Andrey, may I assume from your question/statements below that I can begin using the 3.7.3 distribution for use with win32 compilers?

You definetely should use the latest version, because 3.6.1 is quit old.