--- a/config/libelf.pc.in
+++ b/config/libelf.pc.in
@@ -8,7 +8,7 @@ Description: elfutils libelf library to
 Version: @VERSION@
 URL: http://elfutils.org/
 
-Libs: -L${libdir} -lelf
+Libs: -L${libdir} -lelf @intl_LDFLAGS@
 Cflags: -I${includedir}
 
 Requires.private: zlib
--- a/configure.ac
+++ b/configure.ac
@@ -590,6 +590,9 @@ AC_CONFIG_FILES([config/libelf.pc config
 AC_SUBST(USE_NLS, yes)
 AM_PO_SUBDIRS
 
+case "$USE_NLS" in yes) intl_LDFLAGS="-lintl" ;; esac
+AC_SUBST([intl_LDFLAGS])
+
 dnl Appended to the config.h file.
 dnl We hide all kinds of configuration magic in lib/eu-config.h.
 AH_BOTTOM([#include <eu-config.h>])
--- a/libasm/libasmP.h
+++ b/libasm/libasmP.h
@@ -36,6 +36,9 @@
 
 #include "libdwelf.h"
 
+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
 /* gettext helper macros.  */
 #define _(Str) dgettext ("elfutils", Str)
 
--- a/libdw/libdwP.h
+++ b/libdw/libdwP.h
@@ -37,6 +37,9 @@
 #include <dwarf.h>
 #include "atomics.h"
 
+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
 
 /* gettext helper macros.  */
 #define _(Str) dgettext ("elfutils", Str)
--- a/libdwfl/libdwflP.h
+++ b/libdwfl/libdwflP.h
@@ -47,6 +47,9 @@
 
 typedef struct Dwfl_Process Dwfl_Process;
 
+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
 /* gettext helper macros.  */
 #define _(Str) dgettext ("elfutils", Str)
 
--- a/libelf/libelfP.h
+++ b/libelf/libelfP.h
@@ -39,6 +39,9 @@
 #include <stdio.h>
 #include <string.h>
 
+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
 /* gettext helper macros.  */
 #define _(Str) dgettext ("elfutils", Str)
 
