Инструкция по установке пакета pygraphviz в Pycharm на MacOs

Поскольку я потратил много времени на решение этой проблемы, поэтому сделайте запись для будущего повторного использования.

Окружение

  • Мао os 12.4
  • Macbook air(M1,2020)
  • PyCharm 2022.1.4 (Community Edition)
    • Версия Runtime: 11.0.15+10-b2043.56 aarch64
  • graphviz: стабильная версия 5.0.0
  • pygraphviz: 1.9

Проблема

  • Проблема возникла после установки graphviz.
    • так как для установки pygraphviz вам необходимо
      • Python (версия 3.8, 3.9 или 3.10)
      • Graphviz (версия 2.42 или более поздняя)
      • компилятор C/C++
  • если вы используете обычную команду pip install graphviz для установки graphviz.
    • затем используйте pip install pygraphviz для установки pygraphviz
    • вы столкнетесь с фатальной ошибкой
fatal error: 'graphviz/cgraph.h' file not found
Войти в полноэкранный режим Выйти из полноэкранного режима
  • файл cgraph.h не может быть найден
  • даже вы можете найти этот файл в файле пакета graphviz

Почему возникает эта проблема

  • мастер установки pygraphviz не может найти cgraph.h в своем пути поиска по умолчанию.
  • Поэтому вам необходимо указать путь поиска при установке pygraphviz.

Решение, которое работает для меня

Шаг 1. Используйте Homebrew для установки пакета graphviz.

  • Установите Homebrew с официального сайта
  • Введите следующую команду в терминале Pycharm
brew install graphviz
Войдите в полноэкранный режим Выйти из полноэкранного режима
  • установка займет много времени
    • затем вы должны найти файл graphviz по следующему пути :(/opt/homebrew/Cellar/graphviz).

Некоторые пояснения

  • Homebrew — это своего рода менеджер пакетов для MacOS (или Linux)
  • и все пакеты, установленные через Homebrew, хранятся в файле Homebrew, который находится под файлом opt.
  • opt-файл — это каталог для установки нераспакованных пакетов.
  • Т.е. в данном случае Homebrew поможет вам установить graphviz и предоставит путь поиска для дальнейшей установки pygraphviz.

Шаг 2. Укажите путь поиска при установке pygraphviz

  • Введите следующую команду в терминале Pycharm
pip3 install --global-option=build_ext --global-option="-I$(brew --prefix graphviz)/include" --global-option="-L$(brew --prefix graphviz)/lib" pygraphviz
Войти в полноэкранный режим Выйти из полноэкранного режима
  • pip3 — это только для того, чтобы убедиться, что пакет установлен для python 3
  • флаги -I и -L указывают компоновщику, где искать необходимые библиотеки Graphviz во время сборки и во время выполнения.
  • —prefix позволит вам определить, в каком каталоге искать нужные библиотеки.

Кредит

  • домашняя страница pygraphviz
  • pygraphviz github

Оцените статью
devanswers.ru
Добавить комментарий