--- a/sys_compat_win.c
+++ b/sys_compat_win.c
@@ -52,7 +52,7 @@
     return name;
 }
 
-
+#ifdef _MSC_VER
 int panoTimeToStrWithTimeZone(char *sTime, int len, struct tm  *time) 
 {
     char sZone[20];
@@ -70,3 +70,13 @@
     }  else 
         return 0;
 }
+#else
+#ifdef __MINGW32__
+int panoTimeToStrWithTimeZone(char *sTime, int len, struct tm  *time) 
+{
+    assert(len >= 11);
+    return strftime(sTime, len, "%H%M%S%z", time);
+
+}
+#endif
+#endif