Use tkill instead of kill (the main attached process can be a thread), plus 'make depend'
diff --git a/Makefile b/Makefile
index 3955365..9f5ff06 100644
--- a/Makefile
+++ b/Makefile
@@ -182,7 +182,7 @@
 # DO NOT DELETE
 
 honggfuzz.o: common.h cmdline.h log.h files.h fuzz.h util.h
-cmdline.o: cmdline.h common.h log.h files.h
+cmdline.o: cmdline.h common.h log.h files.h util.h
 display.o: common.h display.h log.h util.h
 log.o: log.h common.h
 files.o: common.h files.h log.h
@@ -192,7 +192,7 @@
 mangle.o: common.h mangle.h log.h util.h
 util.o: common.h files.h log.h
 linux/arch.o: common.h arch.h linux/perf.h linux/ptrace_utils.h
-linux/arch.o: linux/sancov.h log.h util.h
+linux/arch.o: linux/sancov.h log.h util.h files.h
 linux/bfd.o: common.h linux/bfd.h files.h log.h util.h
 linux/perf.o: common.h linux/perf.h log.h util.h
 linux/ptrace_utils.o: common.h linux/ptrace_utils.h files.h linux/bfd.h
diff --git a/linux/ptrace_utils.c b/linux/ptrace_utils.c
index 78174ba..c3a457d 100644
--- a/linux/ptrace_utils.c
+++ b/linux/ptrace_utils.c
@@ -41,6 +41,7 @@
 #include <sys/prctl.h>
 #include <sys/resource.h>
 #include <sys/stat.h>
+#include <sys/syscall.h>
 #include <sys/time.h>
 #include <sys/types.h>
 #include <sys/uio.h>
@@ -58,7 +59,6 @@
 #if defined(__ANDROID__)
 #include <linux/ptrace.h>
 #include <asm/ptrace.h>         /* For pt_regs structs */
-#include <sys/syscall.h>
 #include "capstone.h"
 #endif
 
@@ -1465,7 +1465,7 @@
 
 void arch_ptraceDetach(pid_t pid)
 {
-    if (kill(pid, 0) == -1 && errno == ESRCH) {
+    if (syscall(__NR_kill, pid, 0) == -1 && errno == ESRCH) {
         LOG_D("PID: %d no longer exists", pid);
         return;
     }