Как установить пакет для Python 3.x
Привет всем :)
Возникла такая проблема. У меня в системе установлено несколько версий Python:
$ eselect python list
Available Python interpreters:
[1] python2.7
[2] python3.3
[3] python3.4 *
Как видите текущий Python в системе имееет версию 3.4.
Мне необходимо установить пакет для Python -- "tornado". К сожалению пакет устанавливается в пакеты для Python версии 2.7:
$ sudo pip install tornado
Downloading/unpacking tornado
Downloading tornado-4.1.tar.gz (332kB): 332kB downloaded
Running setup.py (path:/tmp/pip_build_root/tornado/setup.py) egg_info for package tornado
Requirement already satisfied (use --upgrade to upgrade): certifi in /usr/lib64/python2.7/site-packages (from tornado)
Requirement already satisfied (use --upgrade to upgrade): backports.ssl-match-hostname in /usr/lib64/python2.7/site-packages (from tornado)
Installing collected packages: tornado
Running setup.py install for tornado
building 'tornado.speedups' extension
x86_64-pc-linux-gnu-gcc -pthread -fPIC -I/usr/include/python2.7 -c tornado/speedups.c -o build/temp.linux-x86_64-2.7/tornado/speedups.o
x86_64-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L. build/temp.linux-x86_64-2.7/tornado/speedups.o -L/usr/lib64 -lpython2.7 -o build/lib.linux-x86_64-2.7/tornado/speedups.so
Successfully installed tornado
Cleaning up...
Собственно вопрос, а как мне установить пакет "tornado" для Python версии 3.4?
- Для комментирования войдите или зарегистрируйтесь

частично решено
Нашёл частичное решение.
Для Python версии 3.3 в системе есть pip3 и pip3.3. Странно почему нет для pip3.4.
Также спасает ситуаацию использование virtualenv:
$ virtualenv -p python3.4 venvRunning virtualenv with interpreter /usr/bin/python3.4
Using base prefix '/usr'
New python executable in venv/bin/python3.4
Also creating executable in venv/bin/python
Installing setuptools, pip...done.
$ source venv/bin/activate
(venv)trunikov@titan ~/tmp/myproj $ python --version
Python 3.4.1
(venv)trunikov@titan ~/tmp/myproj $ pip install tornado
Collecting tornado
Downloading tornado-4.1.tar.gz (332kB)
100% |################################| 335kB 277kB/s
Collecting certifi (from tornado)
Downloading certifi-14.05.14.tar.gz (168kB)
100% |################################| 172kB 297kB/s
/home/trunikov/tmp/myproj/venv/lib/python3.4/site-packages/setuptools/dist.py:283: UserWarning: The version specified requires normalization, consider using '14.5.14' instead of '14.05.14'.
self.metadata.version,
Installing collected packages: certifi, tornado
Running setup.py install for certifi
/home/trunikov/tmp/myproj/venv/lib/python3.4/site-packages/setuptools/dist.py:283: UserWarning: The version specified requires normalization, consider using '14.5.14' instead of '14.05.14'.
self.metadata.version,
Running setup.py install for tornado
building 'tornado.speedups' extension
x86_64-pc-linux-gnu-gcc -pthread -fPIC -I/usr/include/python3.4 -c tornado/speedups.c -o build/temp.linux-x86_64-3.4/tornado/speedups.o
x86_64-pc-linux-gnu-gcc -pthread -shared build/temp.linux-x86_64-3.4/tornado/speedups.o -L/usr/lib64 -lpython3.4 -o build/lib.linux-x86_64-3.4/tornado/speedups.cpython-34.so
Successfully installed certifi-14.5.14 tornado-4.1
А новости прочитаны?
Может это и не совсем в тему, но все-таки
Сделал, как там говорят?
с поправкой на текущую реальность, разумеется...
Да какие там PYTHON_TARGETS,
Да какие там PYTHON_TARGETS, ему руки надо отрубить вот за все эти sudo pip, потому как сей торнадо прекрасно есть в дереве.
Пользуясь моментом, хочу передать привет друзьям, которые также пользуются "Моментом"
Tzar написал(а): Да какие там
А вы сами пробовали его ставить?
Во-первых, в дереве версия не последняя.
Во-вторых, если бы вы попробовали поставить его из дерева, то увидили бы, что в дереве tornado ставится только для версии python 3.3:
>>> Installing (1 of 1) www-servers/tornado-4.0.1::gentoo
* Messages for package www-servers/tornado-4.0.1:
* Building package for python3.3 only while python3.4 is active.
* Please consider switching the active Python 3 interpreter:
*
* eselect python set --python3 python3.3
*
* Please note that after switching the active Python interpreter,
* you may need to run 'python-updater' to rebuild affected packages.
*
* For more information on PYTHON_TARGETS and python.eclass
* compatibility, please see the relevant Wiki article [1].
*
* [1] https://wiki.gentoo.org/wiki/Project:Python/PYTHON_TARGETS
И в-третьих, вы же наверное понимаете, что проблема не в конкретном пакете, а в том как вообще ставить пакеты для python3.4.
P.S. Одно из изменений в Python3.4 это то, что менеджер пакетов pip идёт с инсталлятором Python по-умолчанию:
А рекомендуемый метод установки пакета:
Но в gentoo почему-то пакет pip для версии Python3.4 не установлен:
egorov-ey ~ # python3.4 -m
egorov-ey ~ # python3.4 -m pip Usage: /usr/bin/python3.4 -m pip <command> [options] Commands: install Install packages. uninstall Uninstall packages. freeze Output installed packages in requirements format. list List installed packages. show Show information about installed packages. search Search PyPI for packages. wheel Build wheels from your requirements. zip DEPRECATED. Zip individual packages. unzip DEPRECATED. Unzip individual packages. bundle DEPRECATED. Create pybundles. help Show help for commands. General Options: -h, --help Show help. -v, --verbose Give more output. Option is additive, and can be used up to 3 times. -V, --version Show version and exit. -q, --quiet Give less output. --log-file <path> Path to a verbose non-appending log, that only logs failures. This log is active by default at /root/.pip/pip.log. --log <path> Path to a verbose appending log. This log is inactive by default. --proxy <proxy> Specify a proxy in the form [user:passwd@]proxy.server:port. --timeout <sec> Set the socket timeout (default 15 seconds). --exists-action <action> Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup. --cert <path> Path to alternate CA bundle. egorov-ey ~ # eix -I dev-python/pip [I] dev-python/pip Available versions: 1.5.6^t{tbz2} ~6.0.8^t ~6.1.1^t {PYTHON_TARGETS="pypy pypy3 python2_7 python3_3 python3_4"} Installed versions: 1.5.6^t{tbz2}(15:53:36 15.04.2015)(PYTHON_TARGETS="python2_7 python3_4 -pypy -pypy3 -python3_3") Homepage: http://www.pip-installer.org/ http://pypi.python.org/pypi/pip/ Description: Installs python packages -- replacement for easy_installможет прочитаешь-таки про PYTHON_TARGETS ?
Ну т.е. ты понял, что сказал
Ну т.е. ты понял, что сказал глупость несколько постов выше?
> Да какие там PYTHON_TARGETS
Вообще-то это мой первый пост
Вообще-то это был мой первый пост в топике, так что глупость я никак не мог сказать несколько постов выше.
А по поводу sudo pip я солидарен с коллегами.