Essentially GCC 4.3.0 does not include c-headers when including C++ headers.
Hence, it breaks compatibility with Horde3d as it relies on this fact.
Here's some patches to fix it.
Code:
Index: trunk/Extensions/Terrain/Sample/main.cpp
===================================================================
--- trunk/Extensions/Terrain/Sample/main.cpp (revision 28)
+++ trunk/Extensions/Terrain/Sample/main.cpp (working copy)
@@ -14,6 +14,7 @@
// *************************************************************************************************
#include <iostream>
+#include <cstdlib>
#include "glfw.h"
#include "app.h"
Index: trunk/Horde3D/Source/ColladaConverter/utils.h
===================================================================
--- trunk/Horde3D/Source/ColladaConverter/utils.h (revision 28)
+++ trunk/Horde3D/Source/ColladaConverter/utils.h (working copy)
@@ -26,6 +26,8 @@
#define _utils_H_
#include "utMath.h"
+#include <cstring>
+#include <cstdlib>
#include <string>
using namespace std;
Index: trunk/Horde3D/Source/Horde3DUtils/main.cpp
===================================================================
--- trunk/Horde3D/Source/Horde3DUtils/main.cpp (revision 28)
+++ trunk/Horde3D/Source/Horde3DUtils/main.cpp (working copy)
@@ -31,6 +31,8 @@
# include <windows.h>
#endif
#include <GL/gl.h>
+#include <cstdlib>
+#include <cstring>
#include <string>
#include <vector>
#include <map>
Index: trunk/Horde3D/Source/Horde3DEngine/utOpenGL.h
===================================================================
--- trunk/Horde3D/Source/Horde3DEngine/utOpenGL.h (revision 28)
+++ trunk/Horde3D/Source/Horde3DEngine/utOpenGL.h (working copy)
@@ -30,6 +30,8 @@
#endif
#include "utPlatform.h"
+#include <cstdlib>
+#include <cstring>
#ifdef PLATFORM_WIN
# define WIN32_LEAN_AND_MEAN 1
Index: trunk/Horde3D/Source/Horde3DEngine/egPrerequisites.h
===================================================================
--- trunk/Horde3D/Source/Horde3DEngine/egPrerequisites.h (revision 28)
+++ trunk/Horde3D/Source/Horde3DEngine/egPrerequisites.h (working copy)
@@ -25,6 +25,9 @@
#ifndef _egPrerequisites_H_
#define _egPrerequisites_H_
+#include <cstdlib>
+#include <cstring>
+
typedef unsigned int uint32;
typedef int ResHandle;
Index: trunk/Horde3D/Source/Horde3DEngine/egRenderer.h
===================================================================
--- trunk/Horde3D/Source/Horde3DEngine/egRenderer.h (revision 28)
+++ trunk/Horde3D/Source/Horde3DEngine/egRenderer.h (working copy)
@@ -32,6 +32,7 @@
#include "egCamera.h"
#include "egModel.h"
#include <vector>
+#include <algorithm>
using namespace std;
class MaterialResource;
Index: trunk/Horde3D/Samples/Knight/main.cpp
===================================================================
--- trunk/Horde3D/Samples/Knight/main.cpp (revision 28)
+++ trunk/Horde3D/Samples/Knight/main.cpp (working copy)
@@ -14,6 +14,7 @@
// *************************************************************************************************
#include <iostream>
+#include <cstdlib>
#include "glfw.h"
#include "app.h"
Index: trunk/Horde3D/Samples/Chicago/main.cpp
===================================================================
--- trunk/Horde3D/Samples/Chicago/main.cpp (revision 28)
+++ trunk/Horde3D/Samples/Chicago/main.cpp (working copy)
@@ -14,6 +14,7 @@
// *************************************************************************************************
#include <iostream>
+#include <cstdlib>
#include "glfw.h"
#include "app.h"