diff --git a/src/binary_c_code_options.h b/src/binary_c_code_options.h
index 91670ecbd10088197557512ac20002da0066c8f8..6dc83abe0d007acde02527ec185af44ab63d1853 100644
--- a/src/binary_c_code_options.h
+++ b/src/binary_c_code_options.h
@@ -35,7 +35,11 @@
 #include <signal.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef DARWIN
+#include <sys/ucontext.h>
+#else
 #include <ucontext.h>
+#endif //DARWIN
 #include <unistd.h>
 #include <fcntl.h>
 #include <sys/time.h>
diff --git a/src/debug/backtrace.c b/src/debug/backtrace.c
index 4eaa9bee961f80e2f540a243045550085c080c90..fff789ec7ba7d4093d3831474c514ea726d5e4f8 100644
--- a/src/debug/backtrace.c
+++ b/src/debug/backtrace.c
@@ -7,7 +7,11 @@
 #define __USE_GNU
 #endif
 
+#ifdef DARWIN
+#include <sys/ucontext.h>
+#else
 #include <ucontext.h>
+#endif //DARWIN
 #include <execinfo.h>
 #include <signal.h>
 #include <stdio.h>