Rechercher dans le manuel MySQL
28.7.4.2 Building C API Client Programs Using pkg-config
MySQL distributions contain a
mysqlclient.pc
file that provides
information about MySQL configuration for use by the
pkg-config command. This enables
pkg-config to be used as an alternative to
mysql_config for obtaining information such
as compiler flags or link libraries required to compile MySQL
applications. For example, the following pairs of commands are
equivalent:
mysql_config --cflags
pkg-config --cflags mysqlclient
mysql_config --libs
pkg-config --libs mysqlclient
The last pkg-config command produces flags for dynamic linking. To produce flags for static linking, use this command:
pkg-config --static --libs mysqlclient
On some platforms, the output with and without
--static
might be the same.
If pkg-config does not find MySQL
information, it might be necessary to set the
PKG_CONFIG_PATH
environment variable to the
directory in which the mysqlclient.pc
file is located, which by default is usually the
pkgconfig
directory under the MySQL
library directory. For example (adjust the location
appropriately):
export PKG_CONFIG_PATH=/usr/local/mysql/lib/pkgconfig # sh, bash, ...
setenv PKG_CONFIG_PATH /usr/local/mysql/lib/pkgconfig # csh, tcsh, ...
The mysqlconfig.pc
installation location
can be controlled using the
INSTALL_PKGCONFIGDIR
CMake option. See
Section 2.9.7, “MySQL Source-Configuration Options”.
The --variable
option takes a configuration
variable name and displays the variable value:
pkg-config --variable=prefix mysqlclient # installation prefix directory
pkg-config --variable=includedir mysqlclient # header file directory
pkg-config --variable=libdir mysqlclient # library directory
To see which variable values pkg-config can
display using the --variable
option, use this
command:
pkg-config --print-variables mysqlclient
You can use pkg-config within a command line using backticks to include the output that it produces for particular options. For example, to compile and link a MySQL client program, use pkg-config as follows:
gcc -c `pkg-config --cflags mysqlclient` progname.c
gcc -o progname progname.o `pkg-config --libs mysqlclient`
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-c-api-building-clients-pkg-config.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.