--- IlmCtl/CtlLex.h
+++ IlmCtl/CtlLex.h
@@ -58,10 +58,11 @@
 //-----------------------------------------------------------------------------
 
 #include <CtlLContext.h>
 #include <CtlTokens.h>
 #include <string>
+#include <cstdlib>
 
 namespace Ctl {
 
 
 class Lex
--- IlmCtlMathTest/testAffineRec.cpp
+++ IlmCtlMathTest/testAffineRec.cpp
@@ -43,13 +43,14 @@
 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 // IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 //
 ///////////////////////////////////////////////////////////////////////////
 
-#include <string>
+#include <cstring>
 #include <fstream>
 #include <iostream>
+#include <cstdlib>
 #include <assert.h>
 #include <CtlRbfInterpolator.h>
 #include <ImathVec.h>
 
 using namespace std;
--- IlmCtlMathTest/testGaussRec.cpp
+++ IlmCtlMathTest/testGaussRec.cpp
@@ -43,13 +43,14 @@
 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 // IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 //
 ///////////////////////////////////////////////////////////////////////////
 
-#include <string>
+#include <cstring>
 #include <fstream>
 #include <iostream>
+#include <cstdlib>
 #include <assert.h>
 #include <CtlRbfInterpolator.h>
 #include <ImathVec.h>
 
 using namespace std;
--- IlmCtlSimd/CtlSimdReg.h
+++ IlmCtlSimd/CtlSimdReg.h
@@ -50,10 +50,11 @@
 #define INCLUDED_CTL_SIMD_REG_H
 
 #include <typeinfo>
 #include <CtlExc.h>
 #include <Iex.h>
+#include <cstring>
 
 //-----------------------------------------------------------------------------
 //
 //	Registers for the SIMD color transformation engine
 //
--- IlmCtlTest/testExamples.cpp
+++ IlmCtlTest/testExamples.cpp
@@ -43,10 +43,11 @@
 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 // IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 //
 ///////////////////////////////////////////////////////////////////////////
 
+#include <cstring>
 #include <CtlSimdInterpreter.h>
 #include <CtlFunctionCall.h>
 #include <CtlType.h>
 #include <assert.h>
 
--- IlmCtlTest/testVarying.cpp
+++ IlmCtlTest/testVarying.cpp
@@ -49,10 +49,11 @@
 #include <CtlSimdInterpreter.h>
 #include <CtlFunctionCall.h>
 #include <CtlType.h>
 #include <ImathMath.h>
 #include <iostream>
+#include <cstring>
 #include <exception>
 #include <assert.h>
 #include <sstream>
 #include <limits>
 #include <half.h>
--- IlmCtlTest/testVaryingReturn.cpp
+++ IlmCtlTest/testVaryingReturn.cpp
@@ -49,10 +49,11 @@
 #include <CtlSimdInterpreter.h>
 #include <CtlFunctionCall.h>
 #include <CtlType.h>
 #include <ImathMath.h>
 #include <iostream>
+#include <cstring>
 #include <exception>
 #include <assert.h>
 #include <sstream>
 #include <limits>
 #include <half.h>
