--- a/libelf/elf.h	2015-08-21 14:22:37.000000000 +0200
+++ b/libelf/elf.h	2015-11-20 04:54:33.948081321 +0100
@@ -21,6 +21,17 @@
 
 #include <features.h>
 
+#if !defined(__GLIBC__)
+/* C++ needs to know that types and declarations are C, not C++.  */
+#ifdef  __cplusplus
+# define __BEGIN_DECLS  extern "C" {
+# define __END_DECLS    }
+#else
+# define __BEGIN_DECLS
+# define __END_DECLS
+#endif
+#endif
+
 __BEGIN_DECLS
 
 /* Standard ELF types.  */