Description:
during compilation cmake does not correctly detect readline.h
therefor USE_NEW_READLINE_INTERFACE is not defined
=> client/mysql.cc does not compile as it tries to use the old readline function names
it seems to me that cmake only checks for libedit, but not for libreadline?
How to repeat:
compile mysql-5.6.9-rc on a usual linux system with libreadline6 installed (but no libedit installed)
Suggested fix:
the following patch did the trick:
--- mysql-5.6-5.6.9-rc+dfsg.orig/cmake/readline.cmake
+++ mysql-5.6-5.6.9-rc+dfsg/cmake/readline.cmake
@@ -192,9 +192,9 @@ MACRO (MYSQL_CHECK_READLINE)
IF(WITH_LIBEDIT)
MYSQL_USE_BUNDLED_LIBEDIT()
ELSE()
- FIND_SYSTEM_LIBEDIT(edit)
- IF(NOT_LIBEDIT_FOUND)
- MESSAGE(FATAL_ERROR "Cannot find system libedit libraries.Use WITH_LIBEDIT")
+ FIND_SYSTEM_LIBEDIT(readline)
+ IF(NOT_LIBREADLINE_FOUND)
+ MESSAGE(FATAL_ERROR "Cannot find system libreadline libraries.Use WITH_LIBREADLINE")
ENDIF()
ENDIF()
ENDIF(NOT WIN32)
Description: during compilation cmake does not correctly detect readline.h therefor USE_NEW_READLINE_INTERFACE is not defined => client/mysql.cc does not compile as it tries to use the old readline function names it seems to me that cmake only checks for libedit, but not for libreadline? How to repeat: compile mysql-5.6.9-rc on a usual linux system with libreadline6 installed (but no libedit installed) Suggested fix: the following patch did the trick: --- mysql-5.6-5.6.9-rc+dfsg.orig/cmake/readline.cmake +++ mysql-5.6-5.6.9-rc+dfsg/cmake/readline.cmake @@ -192,9 +192,9 @@ MACRO (MYSQL_CHECK_READLINE) IF(WITH_LIBEDIT) MYSQL_USE_BUNDLED_LIBEDIT() ELSE() - FIND_SYSTEM_LIBEDIT(edit) - IF(NOT_LIBEDIT_FOUND) - MESSAGE(FATAL_ERROR "Cannot find system libedit libraries.Use WITH_LIBEDIT") + FIND_SYSTEM_LIBEDIT(readline) + IF(NOT_LIBREADLINE_FOUND) + MESSAGE(FATAL_ERROR "Cannot find system libreadline libraries.Use WITH_LIBREADLINE") ENDIF() ENDIF() ENDIF(NOT WIN32)