diff --git a/configure.ac b/configure.ac
index 9690c49..5729acc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -21,16 +21,17 @@ LUA_LIBS="-lm"
 # Check for readline
 READLINE_DEFS="#undef LUA_USE_READLINE"
 if test "x$use_readline" == "xyes"; then
-  AC_CHECK_LIB([readline], [readline], [], [use_readline=no], [-lncurses])
+  AC_CHECK_LIB([readline], [readline], [use_readline=yes], [use_readline=no], [-lncurses])
   AC_CHECK_HEADERS([readline/readline.h readline/history.h], [], [use_readline=no])
   if test "x$use_readline" == "xno"; then
     AC_MSG_WARN([readline headers could not be found, disabling readline support])
   else
     READLINE_DEFS="#define LUA_USE_READLINE"
-    LUA_LIBS="$LUA_LIBS -lreadline -lncurses"
+    READLINE_LIBS="$READLINE_LIBS -lreadline -lncurses"
   fi
 fi
 AC_SUBST(READLINE_DEFS)
+AC_SUBST(READLINE_LIBS)
 
 case "$host" in
   *-mingw*)  use_os=win32  ;;
diff --git a/src/Makefile.am b/src/Makefile.am
index 5bcad35..ee7e2db 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -18,7 +18,7 @@ liblua_la_SOURCES = \
 bin_PROGRAMS = lua luac
 
 lua_SOURCES = lua.c
-lua_LDADD = liblua.la @LUA_LIBS@
+lua_LDADD = liblua.la @LUA_LIBS@ @READLINE_LIBS@
 lua_DEPENDENCIES = liblua.la
 
 luac_SOURCES = luac.c print.c