1、命令语法
configure Command |
CMake Command |
./configure |
cmake . |
./configure --help |
cmake . -LH or ccmake . |
重新编译时,需要清除旧的对象文件和缓存信息
shell> make clean
shell> rm -f CMakeCache.txt
2、安装选项
Parameter |
configure Option |
CMake Option |
CMake Notes |
Installation base directory |
--prefix=/usr |
-DCMAKE_INSTALL_PREFIX=/usr |
|
mysqld directory |
--libexecdir=/usr/sbin |
-DINSTALL_SBINDIR=sbin |
interpreted relative to prefix |
Data directory |
--localstatedir=/var/lib/mysql |
-DMYSQL_DATADIR=/var/lib/mysql |
|
Config directory (for my.cnf) |
--sysconfdir=/etc/mysql |
-DSYSCONFDIR=/etc/mysql |
|
Plugin directory |
--with-plugindir=/usr/lib64/mysql/plugin |
-DINSTALL_PLUGINDIR=lib64/mysql/plugin |
interpreted relative to prefix |
Man page directory |
--mandir=/usr/share/man |
-DINSTALL_MANDIR=share/man |
interpreted relative to prefix |
Shared-data directory |
--sharedstatedir=/usr/share/mysql |
-DINSTALL_SHAREDIR=share |
this is where aclocal/mysql.m4 should be installed |
Library installation directory |
--libdir=/usr/lib64/mysql |
-DINSTALL_LIBDIR=lib64/mysql |
interpreted relative to prefix |
Header installation directory |
--includedir=/usr/include/mysql |
-DINSTALL_INCLUDEDIR=include/mysql |
interpreted relative to prefix |
Info doc directory |
--infodir=/usr/share/info |
-DINSTALL_INFODIR=share/info |
interpreted relative to prefix |
CMAKE_INSTALL_PREFIX值是安装的基本目录,其他cmake选项值若不包括前缀("/"),则是相对路径名。它的绝对路径包括CMAKE_INSTALL_PREFIX路径,如-DINSTALL_SBINDIR=sbin的绝对路径是/usr/local/mysql/sbin。
3、存储引擎选项
mysql存储引擎是插件式的,因此插件控制选项可以指定安装哪个存储引擎。
在使用configure时可以使用--with-plugins=csv,myisam,myisammrg,heap,innobase,archive,blackhole来控制。
在cmake中没有直接对应的相同选项。对于csv,myisam,myisammrg,heap在cmake中是不需要明确指定存储引擎的名称,因为它们是强制性安装。
可以使用以下选择来安装innodb,archive,blackhole存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
(在以后的版本中,可以使用on代替1)
在configure中使用--without-plugin-<engine>来指定不安装哪种存储引擎,对应cmake中的
-DWITHOUT_<ENGINE>_STORAGE_ENGINE
如果既不是-DWITH_<ENGINE>_STORAGE_ENGINE 也不是 -DWITHOUT_<ENGINE>_STORAGE_ENGINE 来指定存储引擎,该存储引擎将安装成共享模块式的。如果不是共享模块式的将排除在外。共享模块安装时必须使用INSTALL PLUGIN语句或--plugin-load才可以使用。
有关插件的CMake的选项的其他信息,请查阅:
http://forge.mysql.com/wiki/MySQL_Internals_Support_for_Plug-Ins
4.lib库选项
Parameter |
configure Option |
CMake Option |
CMake Notes |
readline library |
--with-readline |
-DWITH_READLINE=1 |
|
SSL library |
--with-ssl=/usr |
-DWITH_SSL=system |
|
zlib library |
--with-zlib-dir=/usr |
-DWITH_ZLIB=system |
|
libwrap library |
--without-libwrap |
-DWITH_LIBWRAP=0 |
|
5、其它选项
之前MySQL的编译选项大多数都支持。新旧版本之间的安装选项映射成大写字母,删除选项前面破折号,中间字符间的破折号替换成下划线。如:
--with-debug => WITH_DEBUG=1
--with-embedded-server => WITH_EMBEDDED_SERVER
Parameter |
configure Option |
CMake Option |
CMake Notes |
TCP/IP port number |
--with-tcp-port-=3306 |
-DMYSQL_TCP_PORT=3306 |
|
UNIX socket file |
--with-unix-socket-path=/tmp/mysqld.sock |
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock |
|
Enable LOCAL for LOAD DATA |
--enable-local-infile |
-DENABLED_LOCAL_INFILE=1 |
|
Extra charsets |
--with-extra-charsets=all |
-DEXTRA_CHARSETS=all |
default is "all" |
Default charset |
--with-charset=utf8 |
-DDEFAULT_CHARSET=utf8 |
|
Default collation |
--with-collation=utf8_general_ci |
-DDEFAULT_COLLATION=utf8_general_ci |
|
Build the server |
--with-server |
none |
|
Build the embedded server |
--with-embedded-server |
-DWITH_EMBEDDED_SERVER=1 |
|
libmysqld privilege control |
--with-embedded-privilege-control |
none |
always enabled? |
Install the documentation |
--without-docs |
none |
|
Big tables |
--with-big-tables, --without-big-tables |
none |
tables are big by default |
mysqld user |
--with-mysqld-user=mysql |
-DMYSQL_USER=mysql |
mysql is the default |
Debugging |
--without-debug |
-DWITH_DEBUG=0 |
default is debugging disabled |
GIS support |
--with-geometry |
none |
always enabled? |
Community features |
--enable-community-features |
none |
always enabled |
Profiling |
--disable-profiling |
-DENABLE_PROFILING=0 |
enabled by default |
pstack |
--without-pstack |
none |
pstack is removed |
Assembler string functions |
--enable-assembler |
none |
|
Build type |
--build=x86_64-pc-linux-gnu |
no equivalent |
unneeded? |
Cross-compile host |
--host=x86_64-pc-linux-gnu |
no equivalent |
unneeded? |
Client flag |
--with-client-ldflags=-lstdc++ |
none |
unneeded |
Client flag |
--enable-thread-safe-client |
none |
unneeded, clients are always thread safe |
Comment |
--with-comment='string' |
-DWITH_COMMENT='string' |
|
Shared/static binaries |
--enable-shared --enable-static |
none |
there is only DISABLE_SHARED |
Memory use |
--with-low-memory |
none |
unneeded |
6、调试配置过程
使用configure编译完将生成config.log和config.status文件。
使用cmake编译完在CMakeFiles目录下生成CMakeError.log 和CMakeOutput.log文件。
7、第三方接口工具
在之前的版本,第三方工具从MySQL顶层源目录中读取源configure.in文件来确定mysql版本。如:对5.5.7 - RC版本的AC_INIT线看起来像这样:
AC_INIT([MySQL Server], [5.5.7-rc], [], [mysql])
现在的版本可以直接读取版本文件。如:如果版本是5.5.8,文件看起来像这样的:
MYSQL_VERSION_MAJOR=5
MYSQL_VERSION_MINOR=5
MYSQL_VERSION_PATCH=8
MYSQL_VERSION_EXTRA=
如果源码包不是GA版,MYSQL_VERSION_EXTRA的值将非空。如:对于一个发布RC版本是这样的:
MYSQL_VERSION_EXTRA=rc
构建5位数字的版本号,使用下面公式:
MYSQL_VERSION_MAJOR*10000 + MYSQL_VERSION_MINOR*100 + MYSQL_VERSION_PATCH
Retrieved from "http://forge.mysql.com/wiki/Autotools_to_CMake_Transition_Guide"
分享到:
相关推荐
MySQL5.5编译工具configure向cmake过渡指南.pdf
在研究mysql嵌入式编译和安装,configure安装OK,cmake安装待研究,不过网上找到几篇cmake安装介绍文档还是比较好的,共享给大家。
MysqL在5.5之后开始使用Cmake取代configure编译,这次主要是在CentOS上进行的编译。
一、安装MySQL 1、安装cmake cd /usr/local/src tar zxvf cmake-2.8.11.2.tar.gz cd cmake-2.8.11.2 ./configure make make install 2、安装MySQL groupadd mysql #添加mysql组 useradd -g mysql mysql -s...
step2:添加cmake编译需要的文件 CMmakeLists.txt 找到下面两行更改(注:这个文件可以在OpenCV源代码解压出来的文件夹下的/samples/c/example_cmake/文件夹下拷过来) # Declare the executable target built from ...
Myeclipse5.5 + Weblogic9.2 configure.doc
首先是安装cmake环境。因为博主测试机是ubuntu,所以直接用apt-get install cmake命令来安装,yum相信应该也一样。或者可以编译安装,步骤如下。...然后下载mysql最新源码包,编译安装。 代码如下: wge
一、安装cmake 1、解压cmake压缩包 [root@mysql tools]# tar -zvxf cmake-2.8.8.tar.gz ...[root@mysql cmake-2.8.8]# ./configure --------------------------------------------- CMake 2.8.8, Copyrig
linux编译中configure参数选项详解.pdf
有些同鞋无法编译生成ORB_SLAM2所必需的图优化,计算精确结果的g2o.lib,本资源含全部的源文件及生成好的lib文件,如果在这一步遇到问题,可直接下载取代。
mp4v2-2.0.0及arm linux编译configure选项
使用cmake对opencv编译,configure时下载速度很慢,总是卡在opencv_ffmpeg_64.dll、opencv_videoio_ffmpeg.dll和face_landmark_model.dat三个文件上,有时还会超时,特此将这三个文件提前下载,编译的时候放到相应的...
因为升级Mysql到5.5的原因,PHP需要重新编译。正好也一起把PHP升级到新的5.5.x。PHP5.5还是有许多不错的变化的,关于编码方面的不写了,有一个变化值得注意,5.5.x开始内置了OPcache,也是之前的Zend Optimizer。 ...
查看nginx,apache,php,mysql的编译参数及安装模块位置。
浅谈能自动生成makefile的几大工具: Autotools cmake Autotools: ...CMake是一个跨平台的安装(编译)工具 CMake类似make工具功能,用来读取并执行CMakeLists.txt文件的语句,最终生成makefile C
QT configure参数解释 编译Qt源码必备的教程
串口虚拟工具(Configure Virtual Serial Port Driver v7.2):适用于上位机开发的小伙伴,安装后将vspd安装目录下的vspdctl.dll替换。
在这里,我们重点介绍在其构建过程中使用CMake或由自动工具(通常为C或C ++程序)生成的configure脚本的软件。 使用此工具之前/之后的情况 每当您从网上获得任何CMake或基于configure的源代码树时, CMake或...