diff --git a/configure.ac b/configure.ac
index c10bf8981cbf5cdd2ec0a298886aba6ec0c5f967..f519d199d1c4d14327b8a55a9f7dacf1f8adad7c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -186,7 +186,7 @@ else
 fi
 
 # Avoid adding dl if absent or unneeded
-AC_CHECK_LIB(dl, dlopen, [EXTRA_LIBS="$EXTRA_LIBS dl"])
+AC_SEARCH_LIBS([dlopen], [dl], [EXTRA_LIBS="$EXTRA_LIBS $ac_lib"])
 
 # -{l,}pthread goo
 AC_CANONICAL_TARGET