diff --git a/configure b/configure
index 4bed6f24aa762caaf285e90cc9f8fa19c1c60b74..ce699369a11498074ffa52a6ac585dc31366244e 100755
--- a/configure
+++ b/configure
@@ -5379,9 +5379,9 @@ check_code cc arm_neon.h "int16x8_t test = vdupq_n_s16(0)" && enable intrinsics_
 check_ldflags -Wl,--as-needed
 check_ldflags -Wl,-z,noexecstack
 
-if check_func dlopen; then
+if check_func dlopen && check_func dlsym; then
     ldl=
-elif check_func dlopen -ldl; then
+elif check_func dlopen -ldl && check_func dlsym -ldl; then
     ldl=-ldl
 fi