diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in
index 2638c09e15642ea71b5465e4331aceb82d0768c3..ee530a7c7803dc3eebd3e28cce6eae76dc10ebd8 100644
--- a/testsuite/Makefile.in
+++ b/testsuite/Makefile.in
@@ -89,7 +89,7 @@ $(TARGETS) $(EXTRA_TARGETS): testutils.$(OBJEXT) \
 # The PATH update is for locating dlls on w*ndows.
 check: $(TS_ALL) $(srcdir)/run-tests
 	LD_LIBRARY_PATH=../.lib PATH="../.lib:$$PATH" srcdir="$(srcdir)" \
-	  EMULATOR="$(EMULATOR)" $(srcdir)/run-tests $(TS_ALL)
+	  EMULATOR="$(EMULATOR)" NM="$(NM)" $(srcdir)/run-tests $(TS_ALL)
 
 
 Makefile: $(srcdir)/Makefile.in ../config.status
diff --git a/testsuite/symbols-test b/testsuite/symbols-test
index b48712628581ed4f71d381ebefc906ffcd7b647e..ec8f49183abf574d59d9e807c1a1654dceb90989 100755
--- a/testsuite/symbols-test
+++ b/testsuite/symbols-test
@@ -6,7 +6,7 @@ if [ -z "$srcdir" ] ; then
   srcdir=`pwd`
 fi
 
-# FIXME: Check libhogweed.a too.
+: ${NM:=nm}
 
 # * nm on aix seems to generate bogus outbut including random binary
 #   data. Using -g is a workaround to get rid of that. But nm -g
@@ -16,7 +16,7 @@ fi
 # * gcc on x86 generates functions like __i686.get_pc_thunk.bx in pic
 #   code.
 
-( nm -g ../libnettle.a || nm ../libnettle.a ) \
+( $NM -g ../libnettle.a || $NM ../libnettle.a ) \
     | grep ' [DRT] ' | egrep -v '( |^)\.?_?(_?nettle_|memxor)|get_pc_thunk' \
     | sort -k3 > test1.out
 
@@ -27,7 +27,7 @@ if [ -s test1.out ] ; then
 fi
 
 if [ -s ../libhogweed.a ] ; then
-    ( nm -g ../libhogweed.a || nm ../libhogweed.a ) \
+    ( $NM -g ../libhogweed.a || $NM ../libhogweed.a ) \
 	| grep ' [DRT] ' | egrep -v '( |^)\.?_?_?nettle_|get_pc_thunk' \
 	| sort -k3 > test1.out