HI,
string.h seems to be needed to avoid this error targetting MinGW:
In file included from Source/OpenEXR/IlmImf/ImfChromaticities.h:47:0,
from Source/OpenEXR/./IlmImf/ImfChromaticities.cpp:43:
Source/OpenEXR/Imath/ImathMatrix.h: In constructor 'Imath::Matrix44<t>::Matrix44() [with T = float]':
Source/OpenEXR/./IlmImf/ImfChromaticities.cpp:110:17: instantiated from here
Source/OpenEXR/Imath/ImathMatrix.h:1813:5: error: 'memset' was not declared in this scope</t>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/freeimage-2-fix-missing-include.patch Tue Sep 21 11:46:33 2010 +0200
@@ -0,0 +1,14 @@
+This file is part of mingw-cross-env.
+See doc/index.html for further information.
+
+diff -urN a/Source/OpenEXR/Imath/ImathMatrix.h b/Source/OpenEXR/Imath/ImathMatrix.h
+--- a/Source/OpenEXR/Imath/ImathMatrix.h 2010-07-17 12:48:40.000000000 +0200
++++ b/Source/OpenEXR/Imath/ImathMatrix.h 2010-09-03 18:38:37.138598422 +0200
+@@ -49,6 +49,7 @@
+ #include "ImathVec.h"
+ #include "ImathShear.h"
+
++#include <string.h>
+ #include <iostream>
+ #include <iomanip>
+ </iomanip></iostream></string.h>
Anonymous
This issue is not MinGW specific. I need exactly the same addition "#include" when compiling FreeImage natively under Linux (Debian/Lenny, GCC-4.3.2).
So this is not only a portability issue, but a real bug in the included OpenEXR version.
For info, this bug is fixed in the CVS : see
https://sourceforge.net/tracker/?func=detail&aid=3047380&group_id=11504&atid=111504
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).