6.7.1 my_print_defaults — 从选项文件中显示选项
mysql_config 提供了编译 MySQL 客户端并将其连接到 MySQL 所需有用的信息。它是一个壳牌脚本,因此仅在 Unix 和类 Unix 系统上可用。
Note
pkg-config 可以作为替代 mysql_config 用于获取编译 MySQL 应用程序所需的编译器标志或链接库信息。更多信息,请参阅 使用 pkg-config 构建 C API 客户端程序。
mysql_config 支持以下选项。
-
C 编译器标志,用于找到包含文件和编译时的关键编译器标志和定义。返回的选项与库创建时使用的特定编译器相关联,并可能与您自己的编译器设置冲突。请使用
--include
获取包含仅包含包含路径的更可移植选项。 -
与
--cflags
类似,但用于C++编译器标志。 -
用于找到MySQL头文件的编译器选项。
-
用于链接MySQL客户端库所需的库和选项。
-
用于链接线程安全的MySQL客户端库所需的库和选项。在MySQL 8.4中,所有客户端库都是线程安全的,因此不需要使用这个选项。可以在所有情况下使用
--libs
选项。 -
在配置MySQL时定义的插件目录路径名称。
-
在配置MySQL时定义的默认TCP/IP端口号。
-
Unix套接字文件的默认值,定义在配置MySQL时。
-
显示指定配置变量的值。允许的
var_name
值包括pkgincludedir
(头文件目录)、pkglibdir
(库目录)和plugindir
(插件目录)。 -
MySQL分布的版本号。
如果您不提供任何选项地调用mysql_config,它将显示它支持的所有选项及其值:
$> mysql_config
Usage: ./mysql_config [OPTIONS]
Compiler: GNU 10.4.0
Options:
--cflags [-I/usr/local/mysql/include/mysql]
--cxxflags [-I/usr/local/mysql/include/mysql]
--include [-I/usr/local/mysql/include/mysql]
--libs [-L/usr/local/mysql/lib/mysql -lmysqlclient -lpthread -ldl
-lssl -lcrypto -lresolv -lm -lrt]
--libs_r [-L/usr/local/mysql/lib/mysql -lmysqlclient -lpthread -ldl
-lssl -lcrypto -lresolv -lm -lrt]
--plugindir [/usr/local/mysql/lib/plugin]
--socket [/tmp/mysql.sock]
--port [3306]
--version [8.4.0]
--variable=VAR VAR is one of:
pkgincludedir [/usr/local/mysql/include]
pkglibdir [/usr/local/mysql/lib]
plugindir [/usr/local/mysql/lib/plugin]
您可以在命令行中使用反引号包含mysql_config的输出,以便为特定选项显示结果。例如,要编译并链接一个MySQL客户端程序,请使用mysql_config如下所示:
gcc -c `mysql_config --cflags` progname.c
gcc -o progname progname.o `mysql_config --libs`