Установите пакет Python локально

Я новичок в Ubuntu, так что извините, если вопрос слишком тупой. Как я могу установить пакет Python на уже установленную локальную версию Python?

Ubuntu 14.04, Python 2.7.10 /usr/local/bin/python2.7, пакет, который мне нужно установить, это zlib

заранее спасибо

РЕШИТЬ

  1. $ sudo apt-get установить zlib1g-dev
  2. $ wget python.org/ftp/python/2.7.10/Python-2.7.10.tgz
  3. $ tar xfz Python-2.7.10.tgz
  4. $ cd Python-2.7.10 /
  5. $./configure --prefix / path / to / python / --enable-ipv6
    (в моем случае путь был / usr / local)
  6. $ make
  7. $ sudo make install

Проверьте:
$ python2.7 -c "import zlib; print (zlib.version)"

Большое спасибо всем вам, ребята, за помощь в решении этой проблемы!

6 ответов

Решение

Вам необходимо установить zlib1g-dev пакет и затем запустите: sudo apt-get build-dep python2.7

После установки dev пакет, продолжайте устанавливать zlib пакет.

Если вышеуказанная вещь не работает:

  1. загрузите пакет исходного кода для вашего Python (в этом случае wget python.org/ftp/python/2.7.10/Python-2.7.10.tgz)
  2. бежать ./configure --prefix=/path/to/python
  3. make
  4. make install

Насколько я знаю, нет пакета Python, который содержит zlib потому что это уже входит в стандартную библиотеку.

Попробуйте команду ниже, чтобы увидеть, zlib Пакет Python доступен и в какой версии:

  • для Python 2.x:

    python -c "import zlib; print(zlib.__version__)"
    
  • для Python 3.x:

    python3 -c "import zlib; print(zlib.__version__)"
    

На моей системе это выводит 1.0 для обеих версий Python.

Ни один из существующих ответов не является неправильным, но также не объясняйте, почему у вас возникла проблема или как ее исправить. Давайте проясним некоторые вещи:

  • zlib это встроенная, а не упакованная вещь. Virtualenvs - великие дела, но здесь они не помогут.
  • Если у вас его нет, он не был построен при сборке Python.
  • Вам нужны библиотеки разработки zlib, чтобы Python был связан с ним. Если ./configure step не может его найти, он отключит его из вашей сборки.

Так что, сказав, sudo apt-get build-dep python2.7 будет самым разумным и быстрым способом получить все зависимости сборки для "типичной" сборки Python.

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

  1. $ sudo apt-get установить zlib1g-dev
  2. $ wget python.org/ftp/python/2.7.10/Python-2.7.10.tgz
  3. $ tar xfz Python-2.7.10.tgz
  4. $ cd Python-2.7.9 /
  5. $./configure --prefix / path / to / python / --enable-ipv6
    (в моем случае путь был / usr / local)
  6. $ make
  7. $ sudo make install

проверка: $ python2.7 -c "импорт zlib; печать (zlib.версия)"

Большое спасибо всем вам, ребята, за помощь в решении этой проблемы!

Я настоятельно рекомендую использовать virtualenv для локальной установки Python, которая имеет ту же младшую версию, что и та, что поставляется с Ubuntu (2.7.x), я сам новичок и у меня возникло множество проблем при попытке установить пакеты на локальную версию без него, тогда как с его помощью вы можете просто создать и активировать новую среду и установить в свое удовольствие контент, не меняя глобального списка пакетов.

Руководство пользователя: http://virtualenv.readthedocs.org/en/latest/userguide.html

Здесь есть ответ для того, чтобы взять уже установленную версию Python и создать virtualenv с этой версией. После активации среды вы сможете проверить, есть ли у вас zlib с этой версией по умолчанию, и установить ее, если у вас ее еще нет. https://stackoverflow.com/questions/1534210/use-different-python-version-with-virtualenv

Это решение я нашел на странице компиляции python.org.

sudo apt-get build-dep python3.6

Если этот пакет недоступен для вашей системы, попробуйте уменьшить младшую версию, пока не найдете пакет, который доступен в менеджере пакетов вашей системы.

Я добавил подробные инструкции в блоге.

Другие вопросы по тегам