Без рубрики

Проблема установки MariaDB на MacOS.

Опубликовано

При попытке установить модуль MariaDB для Python я действовал согласно инструкции с официального сайта MariaDB.

pip install mariadb

Но получил вот такую ошибку.

Collecting mariadb
  Using cached https://files.pythonhosted.org/packages/c9/1c/201f431285356652ddf6daa89973e7d37ef1b519dc01d9cce9c866610c84/mariadb-1.1.4.zip
    Complete output from command python setup.py egg_info:
    /bin/sh: mariadb_config: command not found
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/m6/_kvlmqwn629_jgmxs0xm34lh0000gn/T/pip-install-31es4ebz/mariadb/setup.py", line 27, in <module>
        cfg = get_config(options)
      File "/private/var/folders/m6/_kvlmqwn629_jgmxs0xm34lh0000gn/T/pip-install-31es4ebz/mariadb/mariadb_posix.py", line 62, in get_config
        cc_version = mariadb_config(config_prg, "cc_version")
      File "/private/var/folders/m6/_kvlmqwn629_jgmxs0xm34lh0000gn/T/pip-install-31es4ebz/mariadb/mariadb_posix.py", line 28, in mariadb_config
        raise EnvironmentError(
    OSError: mariadb_config not found.
    
    This error typically indicates that MariaDB Connector/C, a dependency which
    must be preinstalled, is not found.
    If MariaDB Connector/C is not installed, see installation instructions
    If MariaDB Connector/C is installed, either set the environment variable
    MARIADB_CONFIG or edit the configuration file 'site.cfg' to set the
     'mariadb_config' option to the file location of the mariadb_config utility.
    
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/m6/_kvlmqwn629_jgmxs0xm34lh0000gn/T/pip-install-31es4ebz/mariadb/

Disclaimer

Данная статья является личным опытом решения данной ошибки. Путём проб и ошибок, перелистывания различных ресурсов интернета решена. Так же версия моей операционной системы является устаревшей, на момент написания статьи MacOS 10.14

В ошибке явно готовиться о неком продукте MariaDB Connector/C. Покопавшись ещё немного в документации mariadb, наткнулся на второй пункт из картинки ниже, который требует установить этот пакет прежде чем приступать к установке пакета mariadb.

Но перейдя по ссылке второго пункта, мы обнаружим, что установить требуемый пакет MariaDB Connector/C возможно только для среды Linux или Microsoft.

Продолжаем дальше долбить запросы в Google и изучать ссылки на документацию. В результате находим вот такую интересную официальную инструкцию. В ней нам предлагают установить HomeBrew и уже через него скачать необходимый пакет.

HomeBrew

Поскольку я пользуюсь маком, а на нем все программы устанавливаются c appstorrent App Store и в основном через графический интерфейс, то он лишён такого чуда как пакетный менеджер yum или dnf. Подобные менеджеры используются в средах Linux и являются, своего рода, магазином (но только бесплатным) приложений в текстовом интерфейсе терминала. И HomeBrew является как-раз таки подобного рода магазином но только для Яблока. Всё это объяснение очень грубо и натянуто, но, я думаю, вы поняли для чего нам необходима эта терминальная команда. Поэтому открываю открываю терминал и вставляю туда команду для установки HomeBrew.

Нам выдают некоторые предупреждения, я внимательно читаю и принимаю продолжить установку. Жму Return и жду пару минут, пока всё загрузится и установится.

Почти всё установилось, но я получил ошибку, к которой стразу же предлагалось решение. Если у вас никаких предупреждений нет, просто пропустите этот шаг. Вводим команду и ждём ещё несколько минут. На экране ничего отображаться не будет, просто ждём.

Спустя минут 10 всё установится.

вводим команду

brew update

и после

brew upgrade

Пока подгружаются необходимые пакеты вы вполне успеете посмотреть серию своего любимого сериала за чашечкой горячего шоколада с маршмеллоу.


А мы продолжаем. Осталось совсем чуть-чуть. После установки и обновления менеджера пакетов Homebrew, можно приступить к установке MariaDB.

brew install mariadb

После установки в homebrew, mariadb будет доступна для Python в HomeBrew, и чтобы не менять интерпретатор по умолчанию, я выполнил установку для локальной версии.

pip3 install mariadb

Примечание: На самом деле установку лучше выполнить для витруального окружения /venv своего проекта. Ву-а-ля! Всё заработало.

Добавить комментарий

Ваш адрес email не будет опубликован.