diff -ur gprolog-1.4.4.orig/src/Ma2Asm/x86_64_any.c gprolog-1.4.4/src/Ma2Asm/x86_64_any.c
--- gprolog-1.4.4.orig/src/Ma2Asm/x86_64_any.c	2013-04-22 13:52:16.000000000 +0200
+++ gprolog-1.4.4/src/Ma2Asm/x86_64_any.c	2017-07-19 17:27:37.057124771 +0200
@@ -204,7 +204,7 @@
   strcpy(asm_reg_cp, Off_Reg_Bank(MAP_OFFSET_CP));
 #endif
 
-#ifdef M_x86_64_darwin
+#if defined(M_x86_64_darwin) || defined(M_x86_64_linux)
   pic_code = 1;			/* NB: on darwin everything is PIC code */
 #elif defined(_WIN32)
   pic_code = 0;			/* NB: on MinGW nothing is needed for PIC code */
