您的位置:首页 > 数据库 > MySQL

[mysql]编译安装报错CMake Error: your C compiler: "CMAKE_C_COMPILE

2017-02-06 15:51 465 查看
报错大致都是缺少依赖包,安装这些就差不多了 yum install -y git gcc gcc-c++ ncurses-devel bison cd mysql-5.6.27
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
-- Running cmake version 2.8.12.2-- Could NOT find Git (missing: GIT_EXECUTABLE)-- The C compiler identification is unknown-- The CXX compiler identification is unknownCMake Error: your C compiler: "CMAKE_C_COMPILER-NOTFOUND" was not found. Please set CMAKE_C_COMPILER to a valid compiler path or name.CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.CMake Error at cmake/os/Linux.cmake:27 (STRING): string sub-command REPLACE requires at least four arguments.Call Stack (most recent call first): CMakeLists.txt:149 (INCLUDE)CMake Error at cmake/os/Linux.cmake:27 (STRING): string sub-command REPLACE requires at least four arguments.Call Stack (most recent call first): CMakeLists.txt:149 (INCLUDE)-- MySQL 5.6.27-- Packaging as: mysql-5.6.27-Linux-i686-- Could NOT find Threads (missing: Threads_FOUND)-- Could NOT find Threads (missing: Threads_FOUND)-- Check if the system is big endian-- Searching 16 bit integerCMake Error at /usr/share/cmake/Modules/TestBigEndian.cmake:44 (message): no suitable type foundCall Stack (most recent call first): configure.cmake:628 (TEST_BIG_ENDIAN) CMakeLists.txt:398 (INCLUDE)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeError.log".分析:

-- Could NOT find Git (missing: GIT_EXECUTABLE)这项应该缺少git包,yum install -y git

-- The C compiler identification is unknown

-- The CXX compiler identification is unknown 这两项缺少gcc和gcc-c++的包,yum install -y gcc gcc-c++

另外需要rm CMakeCache.txt

继续cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DWITH_SSL=yes -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
出现错误:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.Please set them or make sure they are set and tested correctly in the CMake files:OPENSSL_INCLUDE_DIR used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmpCMake Error: Internal CMake error, TryCompile configure of cmake failed-- Check size of wchar_t - failed-- Check size of wctype_tCMake Error: The following variables are used in this project, but they are set to NOTFOUND.Please set them or make sure they are set and tested correctly in the CMake files:OPENSSL_INCLUDE_DIR used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmpCMake Error: Internal CMake error, TryCompile configure of cmake failed-- Check size of wctype_t - failed-- Check size of wint_tCMake Error: The following variables are used in this project, but they are set to NOTFOUND.Please set them or make sure they are set and tested correctly in the CMake files:OPENSSL_INCLUDE_DIR used as include directory in directory /usr/local/src/mysql-5.6.27/CMakeFiles/CMakeTmpCMake Error: Internal CMake error, TryCompile configure of cmake failed-- Check size of wint_t - failed-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)CMake Error at cmake/readline.cmake:85 (MESSAGE): Curses library not found. Please install appropriate package, remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.Call Stack (most recent call first): cmake/readline.cmake:128 (FIND_CURSES) cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE) CMakeLists.txt:409 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-5.6.27/CMakeFiles/CMakeError.log".分析:

-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)缺少ncurses-devel包,yum install -y ncurses-devel

rm CMakeCache.txt

通过阅读官方文件http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html,去除选项-DWITH_READLINE=1和-DWITH_SSL=YES

重新
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
出现warning:

-- Running cmake version 2.8.12.2-- MySQL 5.6.27-- Packaging as: mysql-5.6.27-Linux-x86_64-- HAVE_VISIBILITY_HIDDEN-- HAVE_VISIBILITY_HIDDEN-- HAVE_VISIBILITY_HIDDEN-- Using cmake version 2.8.12.2-- Not building NDB-- Library mysqlclient depends on OSLIBS -lpthread;m;rt;dlWarning: Bison executable not found in PATH-- Library mysqlserver depends on OSLIBS -lpthread;m;rt;crypt;dl-- CMAKE_BUILD_TYPE: RelWithDebInfo-- COMPILE_DEFINITIONS: HAVE_CONFIG_H-- CMAKE_C_FLAGS: -Wall -Wextra -Wformat-security -Wvla -Wwrite-strings -Wdeclaration-after-statement-- CMAKE_CXX_FLAGS: -Wall -Wextra -Wformat-security -Wvla -Woverloaded-virtual -Wno-unused-parameter-- CMAKE_C_FLAGS_RELWITHDEBINFO: -O3 -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF-- CMAKE_CXX_FLAGS_RELWITHDEBINFO: -O3 -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF-- Configuring done-- Generating done-- Build files have been written to: /usr/local/src/mysql-5.6.27分析:Warning: Bison executable not found in PATH 缺少Bison,yum install -y bison cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1
echo $? 是0代表OK
本文出自 “echo xiayun” 博客,请务必保留此出处http://linuxerxy.blog.51cto.com/10707334/1728571
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql Error Running