MySQL cmake编译时这些参数是啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL cmake编译时这些参数是啥意思相关的知识,希望对你有一定的参考价值。

mysql cMake 常规参数介绍

-DCMAKE_INSTALL_PREFIX= 指向mysql安装目录
-DINSTALL_SBINDIR=sbin 指向可执行文件目录(prefix/sbin)
-DMYSQL_DATADIR=/var/lib/mysql 指向mysql数据文件目录(/var/lib/mysql)
-DSYSCONFDIR=/etc/mysql 指向mysql配置文件目录(/etc/mysql)
-DINSTALL_PLUGINDIR=lib/mysql/plugin 指向插件目录(prefix/lib/mysql/plugin)
-DINSTALL_MANDIR=share/man 指向man文档目录(prefix/share/man)
-DINSTALL_SHAREDIR=share 指向aclocal/mysql.m4安装目录(prefix/share)
-DINSTALL_LIBDIR=lib/mysql 指向对象代码库目录(prefix/lib/mysql)
-DINSTALL_INCLUDEDIR=include/mysql 指向头文件目录(prefix/include/mysql)
-DINSTALL_INFODIR=share/info 指向info文档存放目录(prefix/share/info)
prefix官方推荐设为/usr
类型csv,myisam,myisammrg,heap,innobase,archive,blackhole
若想启用某个引擎的支持:-DWITH_<ENGINE>_STORAGE_ENGINE=1
如:
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
若想禁用某个引擎的支持:-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
-DWITH_READLINE=1 启用readline库支持(提供可编辑的命令行)
-DWITH_SSL=system 启用ssl库支持(安全套接层)
-DWITH_ZLIB=system 启用libz库支持(zib、gzib相关)
-DWTIH_LIBWRAP=0 禁用libwrap库(实现了通用TCP包装的功能,为网络服务守护进程使用)
-DMYSQL_TCP_PORT=3306 指定TCP端口为3306
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 指定mysql.sock路径
-DENABLED_LOCAL_INFILE=1 启用本地数据导入支持
-DEXTRA_CHARSETS=all 启用额外的字符集类型(默认为all)
-DDEFAULT_CHARSET=utf8 指定默认的字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci 设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确)
-DWITH_EMBEDDED_SERVER=1 编译嵌入式服务器支持
-DMYSQL_USER=mysql 指定mysql用户(默认为mysql)
-DWITH_DEBUG=0 禁用debug(默认为禁用)
-DENABLE_PROFILING=0 禁用Profiling分析(默认为开启)
-DWITH_COMMENT='string' 一个关于编译环境的描述性注释
参考技术A 用cmake的应该是mysql5.5的版本,之前都是用make的。我安装的使用应该没有使用过.(点)。linux下作为参数传递给命令的.(点)一般代表当前目录。本回答被提问者和网友采纳

ICC 程序集输出中的所有这些数字是啥意思?

【中文标题】ICC 程序集输出中的所有这些数字是啥意思?【英文标题】:What do all those numbers in ICC assembly output mean?ICC 程序集输出中的所有这些数字是什么意思? 【发布时间】:2015-03-06 19:06:33 【问题描述】:

使用 ICC 编译时,每条指令后面都是 2 个点分隔的数字,前缀为井号。这是什么意思?

For example:

L__routine_start__Z12testFunctionPii_0:
testFunction(int*, int):
        push      rbp                                           #1.42
        mov       rbp, rsp                                      #1.42
        sub       rsp, 32                                       #1.42
        mov       QWORD PTR [-24+rbp], rdi                      #1.42
        mov       DWORD PTR [-16+rbp], esi                      #1.42
        mov       DWORD PTR [-32+rbp], 0                        #2.11
        mov       DWORD PTR [-28+rbp], 0                        #3.14
..B1.2:                         # Preds ..B1.3 ..B1.1
        mov       eax, DWORD PTR [-28+rbp]                      #3.19
        mov       edx, DWORD PTR [-16+rbp]                      #3.23
        cmp       eax, edx                                      #3.23
        jge       ..B1.4        # Prob 50%                      #3.23
...

【问题讨论】:

点前的数字似乎是源行号。井号当然是注释分隔符,所以汇编器会忽略这些东西,仅供参考。 ...调试器的信息,我猜。 【参考方案1】:

这是一个注释,包含源代码的行和列信息,因此您可以按照说明的来源进行操作。根据优化级别和 out-of-order execution 等功能,这些行不能按自然顺序排列。

【讨论】:

以上是关于MySQL cmake编译时这些参数是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

怎么查mysql5.5,用cmake安装时的编译参数

如何添加在cmake的宏的定义是啥

编译mysql时CMake Error at cmake/readline.cmake:85 (MESSAGE)

Cmake-MySQL编译参数说明

安装CMake时,gmake 命令缺失问题(为了编译安装mysql)

linux cmake 选项