Spec-Zone.ru › MariaDB

Указание плагинов для сборки

По умолчанию все плагины включены и собираются в виде динамических .so (или .dll) модулей. Если плагин не поддерживает динамическую сборку, он вообще не собирается.

Используйте PLUGIN_xxx переменные CMake. Их можно установить в командной строке с помощью -DPLUGIN_xxx=value или в графическом интерфейсе CMake. Поддерживаемые значения:

Значение Эффект
NO плагин не будет компилироваться вообще
STATIC плагин будет скомпилирован статически, если поддерживается. В противном случае он не будет скомпилирован.
DYNAMIC плагин будет скомпилирован динамически, если поддерживается. В противном случае он не будет скомпилирован. Это поведение по умолчанию.
AUTO плагин будет скомпилирован статически, если поддерживается. В противном случае он будет скомпилирован динамически.
YES то же, что и AUTO, но если отсутствуют необходимые компоненты плагина (например, определённые библиотеки), сборка не будет пропущена, а CMake прервётся с ошибкой.

Обратите внимание, что в отличие от autotools, CMake пытается настроить и собрать проект по частям. Можно изменить один параметр конфигурации, и CMake пересобирает только ту часть дерева, на которую это повлияло. Например, при выполнении cmake -DWITH_EMBEDDED_SERVER=1 в уже собранном проекте будет скомпилирована libmysqld, но другие параметры конфигурации не будут изменены или сброшены до значений по умолчанию.

В частности, это означает, что если вы выполнили, например, cmake -DPLUGIN_OQGRAPH=NO, а затем хотите восстановить поведение по умолчанию (с включённой сборкой OQGraph) в том же дереве сборки, вам нужно будет выполнить cmake -DPLUGIN_OQGRAPH=DYNAMIC

В качестве альтернативы, можно просто удалить файл CMakeCache.txt — в нём CMake хранит текущую конфигурацию сборки — и пересобрать всё с нуля.

Содержимое, воспроизведённое на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проходит предварительной проверки MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/specifying-which-plugins-to-build/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API