diff --git a/core/fxcrt/fx_system.cpp b/core/fxcrt/fx_system.cpp
index eabf8f4..73ae728 100644
--- a/core/fxcrt/fx_system.cpp
+++ b/core/fxcrt/fx_system.cpp
@@ -14,6 +14,10 @@
 
 namespace {
 
+#if !defined(OS_WIN)
+uint32_t g_last_error = 0;
+#endif
+
 template <typename IntType, typename CharType>
 IntType FXSYS_StrToInt(const CharType* str) {
   if (!str)
@@ -242,5 +246,14 @@
   }
   return wlen;
 }
-
 #endif  // defined(OS_WIN)
+
+#if !defined(OS_WIN)
+void SetLastError(uint32_t err) {
+  g_last_error = err;
+}
+
+uint32_t GetLastError() {
+  return g_last_error;
+}
+#endif  // !defined(OS_WIN)
diff --git a/core/fxcrt/fx_system.h b/core/fxcrt/fx_system.h
index 6b113c0..667de6e 100644
--- a/core/fxcrt/fx_system.h
+++ b/core/fxcrt/fx_system.h
@@ -220,4 +220,10 @@
 
 #endif  // _FX_PLATFORM_ != _FX_PLATFORM_WINDOWS_
 
+// Provide SetLastError() and GetLastError() fills for non-windows platforms.
+#if _FX_PLATFORM_ != _FX_PLATFORM_WINDOWS_
+void SetLastError(uint32_t err);
+uint32_t GetLastError();
+#endif
+
 #endif  // CORE_FXCRT_FX_SYSTEM_H_
diff --git a/fpdfsdk/cpdfsdk_helpers.cpp b/fpdfsdk/cpdfsdk_helpers.cpp
index 2d7cba0..1d7690f 100644
--- a/fpdfsdk/cpdfsdk_helpers.cpp
+++ b/fpdfsdk/cpdfsdk_helpers.cpp
@@ -32,10 +32,6 @@
 
 UNSUPPORT_INFO* g_unsupport_info = nullptr;
 
-#if !defined(OS_WIN)
-int g_last_error = 0;
-#endif
-
 bool RaiseUnsupportedError(int nError) {
   if (!g_unsupport_info)
     return false;
@@ -404,16 +400,6 @@
   }
 }
 
-#if !defined(OS_WIN)
-void SetLastError(int err) {
-  g_last_error = err;
-}
-
-int GetLastError() {
-  return g_last_error;
-}
-#endif
-
 void ProcessParseError(CPDF_Parser::Error err) {
   uint32_t err_code = FPDF_ERR_SUCCESS;
   // Translate FPDFAPI error code to FPDFVIEW error code
diff --git a/fpdfsdk/cpdfsdk_helpers.h b/fpdfsdk/cpdfsdk_helpers.h
index a06cc39..fc93d7c 100644
--- a/fpdfsdk/cpdfsdk_helpers.h
+++ b/fpdfsdk/cpdfsdk_helpers.h
@@ -290,12 +290,6 @@
 UNSUPPORT_INFO* GetPDFUnssuportInto();
 void ReportUnsupportedFeatures(CPDF_Document* pDoc);
 void CheckForUnsupportedAnnot(const CPDF_Annot* pAnnot);
-
-#if !defined(OS_WIN)
-void SetLastError(int err);
-int GetLastError();
-#endif
-
 void ProcessParseError(CPDF_Parser::Error err);
 
 #endif  // FPDFSDK_CPDFSDK_HELPERS_H_
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
index ca168ab..9884b1e 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
@@ -11,7 +11,6 @@
 
 #include "core/fpdfapi/parser/cpdf_document.h"
 #include "fpdfsdk/cpdfsdk_formfillenvironment.h"
-#include "fpdfsdk/cpdfsdk_helpers.h"
 #include "fpdfsdk/cpdfsdk_pageview.h"
 #include "fpdfsdk/fpdfxfa/cpdfxfa_page.h"
 #include "fpdfsdk/fpdfxfa/cxfa_fwladaptertimermgr.h"
