diff --git a/compiler2/record.c b/compiler2/record.c
index 716965713754cfb05ed5520b937a178a38f3125b..35dc461e2ff36fe4e2a85bb966d841e21e54ae2f 100644
--- a/compiler2/record.c
+++ b/compiler2/record.c
@@ -6841,7 +6841,7 @@ static void defEmptyRecordTemplate(const char *name, const char *dispname,
     src = mputprintf(src, "boolean %s_template::match(const %s& other_value, "
       "boolean) const\n"
 	"{\n"
-    "if (!other_value.is_bound()) return FALSE;"
+    "if (!other_value.is_bound()) return FALSE;\n"
 	"return match(NULL_VALUE);\n"
 	"}\n\n", name, name);
 
diff --git a/core/Error.cc b/core/Error.cc
index 80caa8241904e994b3e580dd1ac459fafe068f50..9aede65431d4ecfb97b2d6904368266818efa4e8 100644
--- a/core/Error.cc
+++ b/core/Error.cc
@@ -29,7 +29,7 @@
 #include "Runtime.hh"
 #include "Charstring.hh"
 
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
 #include <ucontext.h>
 #include <dlfcn.h>
 #include <execinfo.h>
@@ -41,7 +41,7 @@ using namespace __cxxabiv1;
 
 #endif
 
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
 
 const size_t MAX_DEPTH=100;
 
diff --git a/core/Fd_And_Timeout_User.hh b/core/Fd_And_Timeout_User.hh
index 0437f5fdabd46775057cb546d2eac1fc4651be59..7624adc8f6de5e08366e1d02100b9baab48a31be 100644
--- a/core/Fd_And_Timeout_User.hh
+++ b/core/Fd_And_Timeout_User.hh
@@ -47,6 +47,10 @@
 #include "Error.hh"
 #include "Event_Handler.hh"
 
+#if defined(USE_EPOLL) && !defined(__uint32_t)
+typedef unsigned int __uint32_t;
+#endif
+
 
 class FdMap {
 public:
diff --git a/core/Parallel_main.cc b/core/Parallel_main.cc
index 4c03023e97a2d396f9295ee0d29526d3a85197f2..09c544b2cf1da7e65dd45cbd2b7d11168c895b52 100644
--- a/core/Parallel_main.cc
+++ b/core/Parallel_main.cc
@@ -40,7 +40,7 @@
 #include "Error.hh"
 #include "Encdec.hh"
 #include "TCov.hh"
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
 #include <execinfo.h>
 #endif  
 
@@ -67,7 +67,7 @@ void signal_handler(int signum)
     fprintf(stderr,"%s %s: %s\n",ts,stored_argv,signum==SIGABRT?"Abort was called":"Segmentation fault occurred");
   }
   fflush(stderr);
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
   int nptrs;
   void *buffer[100];
   nptrs = backtrace(buffer, 100);
diff --git a/core/Single_main.cc b/core/Single_main.cc
index adb9b4234921b22c170bb6fffa37e9ea2bce6677..794c44a32883eda5215905299c1bc63577f41896 100644
--- a/core/Single_main.cc
+++ b/core/Single_main.cc
@@ -38,7 +38,7 @@
 #include "Encdec.hh"
 #include "TitanLoggerApi.hh"
 #include "TCov.hh"
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
 #include <execinfo.h>
 #endif  
 
@@ -62,7 +62,7 @@ void signal_handler(int signum)
   } else {
   retval = write(STDERR_FILENO, abortcall , sizeof(abortcall)-1); // sizeof includes \0
   }
-#ifdef LINUX
+#if defined(LINUX) && !defined(ALPINE_LINUX)
   int nptrs;
   void *buffer[100];
   nptrs = backtrace(buffer, 100);