It looks like you have your own header called "string.h" which is on the search path before the standard C string.h, causing mayhem when an STL header tries to #include <cstring>. The standard solution would be to put your own string package in a subdirectory, and only put the parent of that subdirectory on the compiler's search path, then include your header as
#include...
2009-04-23 19:40:36 UTC in better string library