Virtualenv: pip install matplotlib == 1.3.1: проблемы с libfreetype и libagg - PullRequest
0 голосов
/ 18 октября 2018

Я хочу установить конкретную версию matplotlib (1.3.1) в virtualenv.Я создал virtualenv, активировал его и запустил pip install.

virtualenv env
. ./env/bin/activate
pip install matplotlib==1.3.1

В результате возникла ошибка "Команда" python setup.py egg_info "с кодом ошибки 1 в / tmp / pip-install-UafI0m / matplotlib /"

Решения Iустал:

  • Добавлено разрешение sudo
  • Обновление setuptools (pip install --upgrade setuptools)
  • Обновление pip (python -m pip install --upgradepip)
  • Добавлен аргумент -Iv в pip (sudo pip install -Iv matplotlib == 1.3.1)
  • Установлен ez_setup (pip install ez_setup), для ez_setup работала установка pip.

Установка: Python 2.7.15rc1 Ubuntu 18.04 (bionic)

Редактировать: Я проверил его с кучей других пакетов иудалось установить их все правильно.Конечная цель - установить s4d.Я следовал инструкциям здесь .В соответствии с требованиями перечислена версия 1.3.Однако, что будет правильной заменой для 1.3.1?Могу ли я просто обновить до 1.4 т.е. ??1030*

Редактировать 2: Полный вывод

pip2 install matplotlib==1.3.1
Collecting matplotlib==1.3.1
  Using cached https://files.pythonhosted.org/packages/d4/d0/17f17792a4d50994397052220dbe3ac9850ecbde0297b7572933fa4a5c98/matplotlib-1.3.1.tar.gz
    Complete output from command python setup.py egg_info:
    ============================================================================
    Edit setup.cfg to change the build options

    BUILDING MATPLOTLIB
                matplotlib: yes [1.3.1]
                    python: yes [2.7.15rc1 (default, Apr 15 2018, 21:51:34)
                            [GCC 7.3.0]]
                  platform: yes [linux2]

    REQUIRED DEPENDENCIES AND EXTENSIONS
                     numpy: yes [version 1.9.0]
                  dateutil: yes [using dateutil version 2.2]
                   tornado: yes [tornado was not found. It is required for the
                            WebAgg backend. pip/easy_install may attempt to
                            install it after matplotlib.]
                 pyparsing: yes [using pyparsing version 2.0.2]
                     pycxx: yes [Couldn't import.  Using local copy.]
                    libagg: yes [pkg-config information for 'libagg' could not
                            be found. Using local copy.]
                  freetype: no  [pkg-config information for 'freetype2' could
                            not be found.]
                       png: yes [version 1.2.54]

    OPTIONAL SUBPACKAGES
               sample_data: yes [installing]
                  toolkits: yes [installing]
                     tests: yes [using nose version 1.3.4]

    OPTIONAL BACKEND EXTENSIONS
                    macosx: no  [Mac OS-X only]
                    qt4agg: no  [PyQt4 not found]
                   gtk3agg: no  [Requires pygobject to be installed.]
                 gtk3cairo: no  [Requires cairo to be installed.]
                    gtkagg: no  [Requires pygtk]
                     tkagg: no  [The C/C++ header for Tk (tk.h) could not be
                            found.  You may need to install the development
                            package.]
                     wxagg: no  [requires wxPython]
                       gtk: no  [Requires pygtk]
                       agg: yes [installing]
                     cairo: no  [cairo not found]
                 windowing: no  [Microsoft Windows only]

    OPTIONAL LATEX DEPENDENCIES
                    dvipng: no
               ghostscript: yes [version 9.25]
                     latex: no
                   pdftops: yes [version 0.62.0]

    ============================================================================
                            * The following required packages can not be built:
                            * freetype

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-Ji6dpj/matplotlib/

РЕДАКТИРОВАТЬ 3: libfreetype2 и libagg Таким образом, мы сузилиэто до libfreetype отсутствует (и libagg).После недавнего обновления Ubuntu 18.04 у меня было много проблем с рендерингом шрифтов.Поэтому я понизил freetype, как предложено здесь , со следующими командами bash:

sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ artful-updates main"
sudo apt-get update
sudo apt-get install libfreetype6=2.8-0.2ubuntu2.1
sudo apt-mark hold libfreetype6

Я проверил, установлен ли freetype с (который он есть)

ldconfig -p | grep freetype

Поэтому я снял отметку с freetype6 и запустил update, upgrade и dist-upgrade, а затем проверил, могу ли я установить matplotlib, что привело к той же ошибке.Кто-нибудь знает как это решить? Нужно ли что-то редактировать в pkg-config?

sudo apt-mark unhold libfreetype6
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
source env/bin/activate
pip install matplotlib==1.3.1

Редактировать 4 / Предварительное решение Пакет libfreetype6-dev (sudo apt-get install libfreetype6-dev) помог, так что теперь setup.py / pip находит libfreetype.Однако новая ошибка, с которой я сталкиваюсь, такова.Но это, вероятно, новый вопрос

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

1 Ответ

0 голосов
/ 18 октября 2018

Вы пытались просто установить matplotlib1.4 и попробовать, если s4d работает?Возможно, руководство по установке не было обновлено, поскольку вышли более новые версии matplotlib.

...