gpt4 book ai didi

python - 当我使用requirements.txt时,pip没有从virtualenv中安装到site-packages目录

转载 作者:太空宇宙 更新时间:2023-11-03 18:53:52 25 4
gpt4 key购买 nike

我对使用 virtualenv 运行 Python 还比较陌生,所以这可能是一个简单的修复,但我一生都无法弄清楚发生了什么。我运行的是 Windows 7 professional x64,安装了 Python 2.7.5 我已经安装了 pip 和 virtualenv。我有一个 django 项目,我正在尝试处理该项目,我从 Heroku 存储库克隆了该项目。当我尝试设置 virtualenv 并安装项目的要求时,我遇到了一个我无法弄清楚的奇怪错误。我的一切设置如下:

Django项目位于C:\Users\xxx\PythonProjects\myProject

我打开命令提示符,cd 到 myProject 文件夹并执行以下命令:

C:\Users\xxx\PythonProjects\myProject> virtualenv --no-site-packages env

这应该为我的项目创建一个漂亮干净的虚拟环境,所以我继续并按如下方式激活:

C:\Users\xxx\PythonProjects\myProject> Scripts\activate

提示符发生变化,表明我的 virtualenv 已变为事件状态,因此我通过“where”ing python 和 pip 进行了仔细检查:

(env) C:\Users\xxx\PythonProjects\myProject> where python
C:\Users\xxx\PythonProjects\myProject\env\Scripts\python.exe
C:\Python27\python.exe

(env) C:\Users\xxx\PythonProjects\myProject>where pip
C:\Users\xxx\PythonProjects\myProject\env\Scripts\pip.exe
C:\Python27\Scripts\pip.exe

由于 virtualenv 看起来运行正常,我接下来尝试 pip 需求文件,如下所示:

(env) C:\Users\xxx\PythonProjects\myProject> pip install -r requirements.txt

pip 似乎成功运行并安装了我需要的所有软件包。但是,当我加载 python 时,会发生以下情况(django 是我的需求文件中的包之一):

(env) C:\Users\xxx\PythonProjects\myProject>python
Python 2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named django

然后我 cd 到 site-packages 文件夹以了解发生了什么并得到以下信息:

(env) C:\Users\xxx\PythonProjects\myProject\Lib\site-packages>dir
Volume in drive C is Windows7_OS
Volume Serial Number is 808F-577A

Directory of C:\Users\xxx\PythonProjects\myProject\env\Lib\site-packages

07/17/2013 02:16 PM <DIR> .
07/17/2013 02:16 PM <DIR> ..
07/17/2013 02:16 PM 237 easy-install.pth
07/17/2013 02:16 PM <DIR> pip-1.3.1-py2.7.egg
07/15/2013 09:16 PM 332,005 setuptools-0.6c11-py2.7.egg
07/17/2013 02:16 PM 31 setuptools.pth
3 File(s) 332,273 bytes
3 Dir(s) 169,869,336,576 bytes free

看来我的 pip 调用未能将任何东西安装到我的 site-packages 文件夹中,因此 python 不知道在哪里可以找到我所需的包。相反,它们似乎都位于 C:\Users\xxx\PythonProjects\myProject\env\build

如果我使用pip install foo没有需求文件,那么一切正常,并且 foo最终出现在我的 site-packages 文件夹中。有没有办法让我可以使用需求文件来完成这个工作,或者我每次使用 virtualenv 时都必须手动安装每个包?抱歉,帖子可能太长,但我想确保所有相关信息都在这里。感谢您的帮助!

<小时/>

编辑附加信息:

看来我的需求文件可能是问题的根源。仅下载了大约一半的软件包,最后一个是 django-polymorphic 。我的需求文件中指定该包和以下包的行如下:

django-polymorphic==0.4.2
-e hg+https://bitbucket.org/fcurella/django-profiles@5c982ce7c040351fca9847a85dd4ff29f8a367e6#egg=django_profiles-dev
django-sekizai==0.7
-e git://github.com/divio/django-shop.git@0fb2258d27332166e3f76ad7cf7335c1f0a389b2#egg=django_shop-dev
-e git://github.com/fivethreeo/django-shop-categories.git@345fb100f5f680e6ac2066f74f25515eb2cd9374#egg=django_shop_categories-dev`

最佳答案

所以我找到了自己问题的答案。

基本上,如果您在 Windows 上运行 Python 2.7(以及可能的其他版本),某些软件包将无法正常运行。如果其他人遇到此问题,您应该从 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载 Windows 二进制文件并从您的 requirements.txt 文件中删除这些包。执行此操作后,pip 在安装过程中停止了崩溃,并在我的 requirements.txt 文件中正确安装了其余软件包。

我需要的包是:

  1. 枕头
  2. psycopg
  3. 报告实验室

关于python - 当我使用requirements.txt时,pip没有从virtualenv中安装到site-packages目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17709120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com