Configuration Settings for Building Connector/C
Configure the MariaDB Connector/C build via CMake options including build type, TLS/SSL backend, install prefix, and client plugins such as authentication and connection handlers.
Configuration settings
Connector/C specifies its build process with platform-independent CMake listfiles included in each directory of a source tree with the name CMakeLists.txt.
Configuration settings may be specified by passing the -D option to CMake command line interpreter.
Do not build Connector/C from the root of the source tree: Either create a subdirectory "build" inside the source tree or create a subdirectory outside of the source tree.
Example:
cmake ../connector_c -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/localReconfiguration
In case Connector/C was already configured, the CMakeCache.txt file needs to be removed first. In several cases, e.g. when cross compiling CMakeFiles subfolders need to be removed too.
Generator options
If you want to use a different generator, e.g. for nmake on Windows, you need to specify the generator with the -G option. cmake --help lists the available generators for the used platform.
CMake-related configuration settings
CMAKE_BUILD_TYPE
Build type: Release, RelWithDebInfo or Debug
CMAKE_INSTALL_PREFIX
Installation base directory
CMAKE_C_FLAGS
Flags for C-Compiler
TLS/SSL options
Option
Default
Description
WITH_SSL
SCHANNEL (windows), otherwise OPENSSL
Specifies type of TLS/SSL library. Valid values are OPENSSL, GNUTLS, and SCHANNEL (Windows only).
Client plugins
Client plugins can be configured as dynamic plugins (DYNAMIC) or built-in plugins (STATIC) by specifying the plugin name followed by suffix _PLUGIN_TYPE as key, and "DYNAMIC" or "STATIC" as value.
E.g. for building dialog plugin as a built-in plugin, for versions < Connector/C 3.0.4
Beginning with C/C 3.0.4
Connector/C 3.0 supports the following plugins:
Plugin
Type
Default
Description
PVIO_SOCKET
IO
static
plugin for client server communication via socket
PVIO_SHMEM
IO
dynamic
plugin for client server communication via shared memory
PVIO_NPIPE
IO
static
plugin for client server communication via named pipe
DIALOG
Authentication
dynamic
Authentication for user input, e.g. for PAM authentication
MYSQL_OLD_PASSWORD
Authentication
static
Pre. 4.1 authentication (deprecated). Disabled by default in current versions; not built unless explicitly enabled.
MYSQL_NATIVE_PASSWORD
Authentication
static
Default authentication
MYSQL_CLEAR_PASSWORD
Authentication
dynamic
Sends password without hashing or encryption
AUTH_GSSAPI_CLIENT
Authentication
dynamic
Kerberos/GSSAPI authentication plugin
SHA256_PASSWORD
Authentication
dynamic
SHA256 password authentication plugin
REPLICATION
Connection
OFF
Replication/fail over plugin (experimental)
This page is: Copyright © 2026 MariaDB. All rights reserved.
Last updated
Was this helpful?

