Spec-Zone.ru › MySQL Connectors 1.0

4.5 Создание Connector/ODBC из исходного кода на Unix

Для сборки MySQL из исходного кода на Unix вам понадобятся следующие инструменты:

  • Рабочий компилятор ANSI C++. Известно, что работают GCC 4.2.1 или новее, Sun Studio 12.1 или новее, а также многие современные компиляторы поставщиков.

  • CMake.

  • Библиотеки и заголовочные файлы клиента MySQL. Для получения библиотек и заголовочных файлов клиента посетите https://dev.mysql.com/downloads/.

  • Должен быть установлен совместимый менеджер ODBC. Connector/ODBC известен своей работой с менеджерами iODBC и unixODBC. Дополнительную информацию см. в разделе 3.2 «Менеджеры драйверов ODBC».

  • Если вы используете кодировку символов, которая не скомпилирована в библиотеку клиента MySQL, установите определения кодировок символов MySQL из каталога charsets в SHAREDIR (по умолчанию, /usr/local/mysql/share/mysql/charsets). Эти определения должны быть установлены, если вы установили сервер MySQL на том же компьютере. Дополнительную информацию о поддержке кодировок символов см. .

После того, как вы подготовили все необходимые файлы, распакуйте исходные файлы в отдельный каталог, а затем запустите cmake с помощью следующей команды:

$> cmake -G "Unix Makefiles"

Типичные параметры и опции cmake

Возможно, вам потребуется помочь cmake найти заголовочные файлы и библиотеки MySQL, установив переменные среды MYSQL_INCLUDE_DIR, MYSQL_LIB_DIR и MYSQL_DIR в соответствующие расположения; например:

$> export MYSQL_INCLUDE_DIR=/usr/local/mysql/include
$> export MYSQL_LIB_DIR=/usr/local/mysql/lib
$> export MYSQL_DIR=/usr/local/mysql

При запуске cmake вы можете добавить опции в командную строку. Вот несколько примеров:

  • : Используйте, когда каталог заголовочных файлов ODBC не найден в системе $PATH.

  • : Используйте, когда каталог библиотек ODBC не найден в системе $PATH.

  • : Включает поддержку unixODBC. iODBC — это библиотека ODBC по умолчанию, используемая при построении Connector/ODBC из исходного кода на платформах Linux. В качестве альтернативы, unixODBC можно использовать, установив эту опцию в “1”.

  • -DMYSQLCLIENT_STATIC_LINKING=boolean: Статическая ссылка на библиотеку клиента MySQL. Динамическая ссылка на библиотеку клиента MySQL выбрана по умолчанию — то есть, опция cmake MYSQLCLIENT_STATIC_LINKING установлена по умолчанию (однако двоичные дистрибутивы Connector/ODBC от Oracle ссылаются статически на библиотеку клиента). Если вы хотите выполнить статическую ссылку на библиотеку клиента MySQL, установите опцию в TRUE. См. также описание для опции -DMYSQLCLIENT_LIB_NAME=client_lib_name_with_extension.

  • -DBUNDLE_DEPENDENCIES=boolean: Включить для установки внешних зависимостей времени выполнения библиотек, таких как OpenSSL, вместе с коннектором. Для зависимостей, унаследованных от библиотеки клиента MySQL, это работает только в том случае, если эти зависимости включены в саму библиотеку клиента. Опция добавлена в v8.0.11.

  • -DMYSQLCLIENT_LIB_NAME=client_lib_name_with_extension: Путь к библиотеке клиента MySQL. См. описание для MYSQLCLIENT_STATIC_LINKING. Для статической ссылки на библиотеку клиента MySQL используйте эту опцию для указания имени библиотеки клиента для статической ссылки. Также используйте эту опцию, если хотите выполнить динамическую ссылку на библиотеку MySQL-клиента, отличную от libmysqlclient.so. cmake ищет библиотеку клиента по пути, указанному в переменной среды MYSQL_LIB_DIR; если переменная не задана, cmake ищет её в стандартных расположениях внутри папки, указанной в переменной среды MYSQL_DIR.

  • -DMYSQL_CONFIG_EXECUTABLE=/path/to/mysql_config: Указывает местоположение утилиты , которая используется для получения значений переменных MYSQL_INCLUDE_DIR, MYSQL_LIB_DIR, MYSQL_LINK_FLAGS и MYSQL_CXXFLAGS. Значения, полученные перезаписываются значениями, предоставленными непосредственно cmake в качестве параметров.

  • -DMYSQL_EXTRA_LIBRARIES=dependencies: При статической ссылке на библиотеку MySQL-клиента (-DMYSQLCLIENT_STATIC_LINKING=ON) и при установке MYSQL_LIB_DIR и MYSQL_INCLUDE_DIR (чтобы mysql_config не использовался для обнаружения настроек), используйте это для определения списка зависимостей, необходимых для библиотеки клиента.

  • -DMYSQL_LINK_FLAGS=MySQL link flags

  • -DMYSQL_CXXFLAGS=MySQL C++ linkage flags

  • -DMYSQL_CXX_LINKAGE=1: Включает C++-связь с библиотекой клиента MySQL. По умолчанию MYSQL_CXX_LINKAGE включен для MySQL 5.6.4 или более поздних версий. Для MySQL 5.6.3 и более ранних версий эту опцию необходимо явно установить в 1.

Шаги сборки для Unix

Для сборки библиотек драйвера выполните make:

$> make

Если возникнут ошибки, исправьте их и продолжайте процесс сборки. Если вы не можете завершить сборку, см. раздел 9.1 «Поддержка Connector/ODBC сообществом».

Установка библиотек драйвера

Для установки библиотек драйвера выполните следующую команду:

$> make install

Дополнительную информацию о процессе сборки см. в файле BUILD, который входит в состав исходного дистрибутива.

Тестирование Connector/ODBC на Unix

В дистрибутиве с собранными библиотеками предоставляются некоторые тесты для Connector/ODBC. Для запуска тестов:

  1. Убедитесь, что в вашей системе есть файл odbc.ini, с помощью которого можно настроить записи DSN. Образец файла odbc.ini генерируется процессом сборки в папке test. Установите переменную среды ODBCINI в расположение вашего файла odbc.ini.

  2. Настройте тестовый DSN в вашем файле odbc.ini (см. раздел 5.5 «Настройка DSN Connector/ODBC на Unix» для получения подробностей). Образец записи DSN, который вы можете использовать для ваших тестов, можно найти в образцовом файле odbc.ini.

  3. Установите переменную среды TEST_DSN в имя вашего тестового DSN.

  4. Установите переменные среды TEST_UID и, возможно, также TEST_PASSWORD в имя пользователя и пароль для тестов, если это необходимо. По умолчанию тесты используют «root» в качестве пользователя и не вводят пароль; если вы хотите, чтобы тесты использовали другое имя пользователя или пароль, установите TEST_UID и TEST_PASSWORD соответственно.

  5. Убедитесь, что ваш сервер MySQL запущен.

  6. Выполните следующую команду:

    $> make test
    

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/connector-odbc-en/connector-odbc-installation-source-unix.html

Spec-Zone.ru

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