--- a/build-tree/ClanLib-0.6.5/Sources/API/Display/Display/pixeldata.h
+++ b/build-tree/ClanLib-0.6.5/Sources/API/Display/Display/pixeldata.h
@@ -25,6 +25,8 @@
 
 #include "surfaceprovider_32bpp.h"
 
+#include <cstring>
+
 //: Pixel Data Class
 class CL_PixelData
 {
--- a/build-tree/ClanLib-0.6.5/Sources/API/Sound/SoundProviders/static_provider_raw.h
+++ b/build-tree/ClanLib-0.6.5/Sources/API/Sound/SoundProviders/static_provider_raw.h
@@ -27,6 +27,8 @@
 #include "../soundbuffer.h"
 #include "../../Core/System/cl_assert.h"
 
+#include <cstring>
+
 //: Static sample in a raw PCM format (no header in file).
 class CL_Sample_RawData : public CL_StaticSoundProvider
 {
--- a/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/datafile_inputprovider.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/datafile_inputprovider.cpp
@@ -32,6 +32,8 @@
 	#define OPENFLAGS O_RDONLY
 #endif
 
+#include <cstring>
+
 char datafile_id[]="ClanSoft datafile version 4.0";
 
 CL_InputSourceProvider *CL_InputSourceProvider::create_datafile_provider(const std::string &filename)
--- a/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/inputsource_memory_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/inputsource_memory_generic.cpp
@@ -18,6 +18,8 @@
 #include "inputsource_memory_generic.h"
 #include "outputsource_memory_generic.h"
 
+#include <cstring>
+
 CL_InputSource_MemoryGeneric::CL_InputSource_MemoryGeneric(
 	void *_data,
 	int size,
--- a/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/inputsource_provider_file.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/inputsource_provider_file.cpp
@@ -22,6 +22,8 @@
 #include <API/Core/IOData/inputsource_provider_file.h>
 #include <API/Core/IOData/inputsource_file.h>
 
+#include <cstring>
+
 CL_InputSourceProvider_File::CL_InputSourceProvider_File(const std::string &path)
 {
 	char cwd[1026];
--- a/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/outputsource_memory_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Core/IOData/Generic/outputsource_memory_generic.cpp
@@ -18,6 +18,8 @@
 #include <API/Core/IOData/outputsource.h>
 #include "outputsource_memory_generic.h"
 
+#include <cstring>
+
 CL_OutputSource_MemoryGeneric::CL_OutputSource_MemoryGeneric(unsigned int blocksize)
 {
 	m_blocksize = blocksize;
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/blit_alphamask_rle.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/blit_alphamask_rle.cpp
@@ -20,6 +20,8 @@
 #include "displaycard_generic.h"
 #include <API/Display/Display/surfaceprovider.h>
 
+#include <cstring>
+
 using namespace std;
 
 BltRLERow_AlphaMask<unsigned short> *CL_Blit_AlphaMask_RLE::bltrow_16bit = NULL;
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/blit_opaque.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/blit_opaque.cpp
@@ -23,6 +23,8 @@
 	#define fast_memmove memcpy
 #endif
 
+#include <cstring>
+
 CL_Blit_Opaque::CL_Blit_Opaque(
 	CL_SurfaceProvider *provider,
 	int bytes_per_pixel,
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/mousecursor_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/mousecursor_generic.cpp
@@ -26,6 +26,8 @@
 #include "API/Display/Input/mouse.h"
 #include "surface_generic.h"
 
+#include <cstring>
+
 /**************************************
       class CL_MouseCursor_Generic
 **************************************/
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/palette.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/palette.cpp
@@ -17,6 +17,7 @@
 #include <API/Core/IOData/inputsource_provider.h>
 #include <API/Core/System/cl_assert.h>
 #include <API/Core/IOData/inputsource.h>
+#include <cstring>
 
 using namespace std;
 
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/target_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/Generic/target_generic.cpp
@@ -23,6 +23,7 @@
 #include <API/Core/System/cl_assert.h>
 #include <API/Core/IOData/cl_endian.h>
 #include <Display/Display/Generic/colormap.h>
+#include <cstring>
 
 using namespace std;
 
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/X11/display_xwindow.h
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/X11/display_xwindow.h
@@ -33,6 +33,8 @@
 #include "Core/System/Unix/init_linux.h"
 #include "x11_resolution.h"
 
+#include <cstring>
+
 class CL_XWindow_CompatibleCard : public CL_DisplayCard_Generic
 // used by GLX implementation.
 {
--- a/build-tree/ClanLib-0.6.5/Sources/Display/Display/X11/x11_resolution.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/Display/X11/x11_resolution.cpp
@@ -15,6 +15,7 @@
 #include "Core/precomp.h"
 
 #include <iostream>
+#include <cstring>
 
 #ifdef USE_X11
 #include "API/Core/System/cl_assert.h"
--- a/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/masktranscol_provider.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/masktranscol_provider.cpp
@@ -16,6 +16,8 @@
 #include "masktranscol_provider.h"
 #include "API/Core/System/cl_assert.h"
 
+#include <cstring>
+
 CL_MaskTranscolProvider::CL_MaskTranscolProvider(
 	CL_SurfaceProvider *_parent,
 	bool _delete_provider,
--- a/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/provider_pcx.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/provider_pcx.cpp
@@ -26,6 +26,7 @@
 #include "API/Display/Display/res_surface.h"
 #include "API/Core/Resources/resourceoptions.h"
 #include <iostream>
+#include <cstring>
 
 CL_Surface *CL_PCXProvider::create(
 	std::string handle, 
--- a/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/sprite_subarray_provider.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Display/SurfaceProviders/sprite_subarray_provider.cpp
@@ -20,6 +20,8 @@
 #include "API/Display/SurfaceProviders/sprite_subarray_provider.h"
 #include "API/Core/System/cl_assert.h"
 
+#include <cstring>
+
 CL_Surface *CL_SpriteSubarrayProvider::create(CL_SurfaceProvider *parent_provider, 
 	int start_x, int start_y, 
 	int width, int height, 
--- a/build-tree/ClanLib-0.6.5/Sources/Network/Generic/ip_address.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Network/Generic/ip_address.cpp
@@ -23,6 +23,8 @@
 	#include <windows.h>
 #endif
 
+#include <cstring>
+
 #ifndef INADDR_NONE
 #define INADDR_NONE -1
 #endif
--- a/build-tree/ClanLib-0.6.5/Sources/Network/Generic/netvariables.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Network/Generic/netvariables.cpp
@@ -16,6 +16,7 @@
 #include "API/Network/netvariables.h"
 #include "netvariables_generic.h"
 #include <vector>
+#include <cstring>
 
 /////////////////////////////////////////////////////////////////////////////
 // CL_NetVariables Construction:
--- a/build-tree/ClanLib-0.6.5/Sources/Network/Generic/socket.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Network/Generic/socket.cpp
@@ -28,6 +28,8 @@
 #include "socket_generic.h"
 #include "API/Core/System/error.h"
 
+#include <cstring>
+
 /////////////////////////////////////////////////////////////////////////////
 // CL_Socket construction:
 
--- a/build-tree/ClanLib-0.6.5/Sources/Network/Generic/socket_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Network/Generic/socket_generic.cpp
@@ -18,6 +18,8 @@
 
 #include "socket_generic.h"
 
+#include <cstring>
+
 /////////////////////////////////////////////////////////////////////////////
 // CL_Socket_Generic static operations:
 
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/mixer.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/mixer.cpp
@@ -14,6 +14,8 @@
 #include <Sound/Sound/ClanSound/mixer.h>
 #include <Sound/Sound/ClanSound/cardplayback_clan.h>
 
+#include <cstring>
+
 #ifdef USE_I386_ASSEMBLER
 #if defined(__BORLANDC__) && !defined(USE_TASM)
   #undef USE_I386_ASSEMBLER
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/playback_static.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/playback_static.cpp
@@ -24,6 +24,7 @@
 #include <Sound/Sound/ClanSound/soundcard_clan.h>
 
 #include <cmath>
+#include <cstring>
 
 CL_Playback_Static::CL_Playback_Static(
 	CL_SoundCard_ClanSound *card,
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/playback_stream.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/playback_stream.cpp
@@ -29,6 +29,8 @@
 #include <Sound/Sound/ClanSound/playback_stream.h>
 #include <Sound/Sound/ClanSound/soundcard_clan.h>
 
+#include <cstring>
+
 CL_Playback_Stream::CL_Playback_Stream(
 	CL_SoundCard_ClanSound *card,
 	CL_StreamSoundProvider *_provider,
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/soundbuffer_static_clan.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/Sound/ClanSound/soundbuffer_static_clan.cpp
@@ -31,6 +31,8 @@
 #include <Sound/Sound/ClanSound/soundcard_clan.h>
 #include "../Generic/soundbuffer_generic.h"
 
+#include <cstring>
+
 CL_CardBuffer_Static_ClanSound::CL_CardBuffer_Static_ClanSound(
 	CL_SoundCard_ClanSound *card,
 	CL_StaticSoundProvider *provider,
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/SoundFilters/inverse_echofilter_generic.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/SoundFilters/inverse_echofilter_generic.cpp
@@ -22,6 +22,8 @@
 #include <memory.h>
 #endif
 
+#include <cstring>
+
 CL_InverseEchoFilter::CL_InverseEchoFilter(int buffer_size)
 {
 	impl = new CL_InverseEchoFilter_Generic;
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/SoundProviders/static_provider_wave.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/SoundProviders/static_provider_wave.cpp
@@ -28,6 +28,8 @@
 #include "API/Sound/SoundProviders/static_provider_raw.h"
 #include "API/Sound/SoundProviders/static_provider_wave.h"
 
+#include <cstring>
+
 CL_SoundBuffer *CL_Sample::create(const std::string &sample_id, CL_InputSourceProvider *provider)
 {
 	return CL_SoundBuffer::create(new CL_Sample(sample_id, provider), true);
--- a/build-tree/ClanLib-0.6.5/Sources/Sound/SoundProviders/stream_provider_wave.cpp
+++ b/build-tree/ClanLib-0.6.5/Sources/Sound/SoundProviders/stream_provider_wave.cpp
@@ -27,6 +27,7 @@
 #include "API/Sound/SoundProviders/stream_provider_wave.h"
 
 #include <iostream>
+#include <cstring>
 
 /*****************************
       CL_Streamed_WaveSample
