3.3使用pkg-config构建C API客户端程序

MySQL发行版包含一个mysqlclient.pc文件,提供MySQL配置信息供pkg-config命令。这使pkg-config作为…的替代品mysql_config获取编译MySQL应用程序所需的编译器标志或链接库等信息。例如,以下命令对是等价的:

Mysql_config——cflags pkg-config——cflags mysqlclient Mysql_config——libs pkg-config——libs mysqlclient

最后一个pkg-config命令生成动态链接的标志。要生成静态链接的标志,使用这个命令:

mysqlclient . config——static——libs

在某些平台上,有和没有输出——静态可能是一样的。

请注意

如果pkg-config没有找到MySQL信息,可能需要设置PKG_CONFIG_PATH对象所在目录中的环境变量mysqlclient.pc文件,默认情况下通常是pkgconfigMySQL库目录下的目录。例如(适当调整位置):

# sh, bash,…export PKG_CONFIG_PATH=/usr/local/mysql/lib/pkgconfig # For csh, tcsh,…setenv PKG_CONFIG_PATH /usr/local/mysql/lib/pkgconfig

mysqlconfig.pc安装位置可以使用INSTALL_PKGCONFIGDIRCMake选择。看到MySQL源配置选项

——变量选项接受一个配置变量名,并显示变量值:

mysqlclient: # library directory pkg-config——variable=libdir mysqlclient . config

看看哪个变量值pkg-config可以使用——变量选项,使用以下命令:

pkg-config——print-variables mysqlclient

您可以使用pkg-config在命令行中使用反勾号包含它为特定选项产生的输出。例如,要编译和链接MySQL客户端程序,使用pkg-config如下:

GCC -c ' pkg-config——cflags mysqlclient ' programname .cO ' pkg-config——libs mysqlclient '