首先我这是一台CentOS release 6.2 (Final),新安装的系统,没有任何软件及库文件。安装mysql5.5之前,先需要大概了解一下,需要注意的信息,mysql5.5的安装与其它版本不同的是编译安装时,需要用到cmake,所以做如下操作:
1.yum install gcc* c++ * autoconf automake zlib* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*安装系统所需要的库文件
2.安装cmake工具。yum install cmake*
3.由于我这个系统是新安装的没有任何软件,所以如果用yum install cmake*安装成功后,到安装mysql时会出现如下错误,请看:
[root@localhost mysql]# cd mysql-5.5.25a
[root@localhost mysql-5.5.25a]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306
CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.
Missing variable is:
CMAKE_C_COMPILER_ENV_VAR
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.
Missing variable is:
CMAKE_C_COMPILER
CMake Error: Could not find cmake module file:/root/mysql/mysql-5.5.25a/CMakeFiles/CMakeCCompiler.cmake
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.
Missing variable is:
CMAKE_CXX_COMPILER_ENV_VAR
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.
Missing variable is:
CMAKE_CXX_COMPILER
CMake Error: Could not find cmake module file:/root/mysql/mysql-5.5.25a/CMakeFiles/CMakeCXXCompiler.cmake
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
大概的意思就是说cmake没有安装好,我明明用yum install cmake*安装好了呀?后来yum install make 后,[root@localhost mysql-5.5.25a]# yum install make
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package make.i686 1:3.81-20.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
make i686 1:3.81-20.el6 base 386 k
Transaction Summary
================================================================================
Install 1 Package(s)
Total download size: 386 k
Installed size: 1.0 M
Is this ok [y/N]: y
Downloading Packages:
make-3.81-20.el6.i686.rpm | 386 kB 00:01
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : 1:make-3.81-20.el6.i686 1/1
Installed:
make.i686 1:3.81-20.el6
Complete!
再执行./configure成功了。出现如下信息(部分):
-- Check size of wctype_t - done
-- Check size of wint_t
-- Check size of wint_t - done
-- Found Curses: /usr/lib/libcurses.so
-- Looking for tputs in /usr/lib/libcurses.so
-- Looking for tputs in /usr/lib/libcurses.so - found
-- Looking for include files HAVE_LIBAIO_H
-- Looking for include files HAVE_LIBAIO_H - not found.
-- Looking for io_queue_init in aio
-- Looking for io_queue_init in aio - not found
-- Performing Test HAVE_IB_GCC_ATOMIC_BUILTINS
-- Performing Test HAVE_IB_GCC_ATOMIC_BUILTINS - Success
-- Performing Test HAVE_IB_ATOMIC_PTHREAD_T_GCC
-- Performing Test HAVE_IB_ATOMIC_PTHREAD_T_GCC - Success
-- Check size of pthread_t
-- Check size of pthread_t - done
-- Performing Test HAVE_PEERCRED
-- Performing Test HAVE_PEERCRED - Success
Warning: Bison executable not found in PATH
-- Configuring done
-- Generating done
-- Build files have been written to: /root/mysql/mysql-5.5.25a
第二种:如果用源码形式安装会出现如下错误:
[root@localhost mysql]# cd cmake-2.8.10.1
[root@localhost cmake-2.8.10.1]# ./configure
---------------------------------------------
CMake 2.8.10.1, Copyright 2000-2012 Kitware, Inc.
Found GNU toolchain
C compiler on this system is: gcc
C++ compiler on this system is: g++
---------------------------------------------
Error when bootstrapping CMake:
Cannot find appropriate Makefile processor on this system.
Please specify one using environment variable MAKE.
---------------------------------------------
Log of errors: /root/mysql/cmake-2.8.10.1/Bootstrap.cmk/cmake_bootstrap.log
---------------------------------------------
它在这里直接提示缺少make 环境。
[root@localhost cmake-2.8.10.1]# yum install make
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package make.i686 1:3.81-20.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
make i686 1:3.81-20.el6 base 386 k
Transaction Summary
================================================================================
Install 1 Package(s)
Total download size: 386 k
Installed size: 1.0 M
Is this ok [y/N]:
这回在安装mysql时,就可以了。
总结一下,两种不同方法安装cmake时,提示错误位置不同。可能这些只与我的系统有关,可能是新系统,好多软件均未安装,在些做下笔记,方便以后有朋友遇到此种问题时,方便查阅。