所以我有一个名为venv的virtualenv文件夹用于我的python项目。
我可以跑:
venv/bin/pip install -r requirements.txt
除了一个,M2Crypto,它安装了我需要的所有项目需求。 安装它的唯一方法是通过apt-get:
apt-get install python-m2crypto
我怎样才能添加这个软件包通过安装到venv文件夹?
--system-site-packages
可以访问全球网站包模块到虚拟环境。
你可以这样做:
$ sudo apt-get install python-m2crypto $ virtualenv env --system-site-packages
…然后你可以在你的virtualenv中访问m2crypto
(以及所有其他的系统安装的软件包)。
毕竟我做了什么:
cp -R /usr/lib/python2.7/dist-packages/M2Crypto /home/richard/hello-project/venv/lib/python2.7/site-packages/ cp -R /usr/lib/python2.7/dist-packages/OpenSSL /home/richard/hello-project/venv/lib/python2.7/site-packages/
toggleglobalsitepackages
会切换到系统范围的site-packages
访问权限。
注意:你需要用pip install virtualenvwrapper
才能得到这个命令; 香草virtualenv
不包括它。 使用virtualenvwrapper
您还可以获得非常有用的mkvirtualenv
和rmvirtualenv
命令等等。
venv/bin/pip install -I M2Crypto
-I
强制它也被安装到virtualenv中,即使它已经全局安装。