在 linux 上为非默认版本安装 python 模块
Posted
技术标签:
【中文标题】在 linux 上为非默认版本安装 python 模块【英文标题】:Install python module for non-default version on linux 【发布时间】:2014-09-29 11:48:47 【问题描述】:我的 ubuntu 机器上安装了不同的 python 版本。默认版本为 2.7。
所以当我安装任何新的 python 模块时,例如使用:
#apt-get install python-nfqueue
它将仅针对默认版本 (2.7) 安装
如何为其他版本安装新模块? 有没有办法使用 apt-get install 来做到这一点?
谢谢!
【问题讨论】:
【参考方案1】:您应该使用 Python 包安装程序 pip
安装 Python 库。
使用您要使用的 Python 版本创建一个 virtualenv,激活它,然后执行pip install NetfilterQueue
。您仍然需要使用apt-get
安装系统依赖项(例如,在这种情况下为libnetfilter-queue-dev
)。
【讨论】:
感谢您的回答。我仍然收到此错误:ImportError: /usr/local/lib/python3.4/dist-packages/netfilterqueue.cpython-34m.so: undefined symbol: PyString_FromStringAndSize
【参考方案2】:
您可以安装 pip 以使用不同版本的 python。这是指向阅读文档页面的 pip 的链接(http://pip.readthedocs.org/en/latest/installing.html)。
将 pip 安装到您机器上的默认 python 版本:
python get-pip.py
要安装非标准版本,请使用您希望安装的版本调用 python:
python33 get-pip.py
然后您可以通过调用来为 python 3.3 版运行 pip
pip33 install pythonmodule
【讨论】:
以上是关于在 linux 上为非默认版本安装 python 模块的主要内容,如果未能解决你的问题,请参考以下文章
在 MacOS 上为系统范围的 Python 安装 OpenCV
在 Linux 上为 python3 安装 midi、midi_maniulation