django pip install:如何强制特定的软件包版本

kxe2p93d  于 2023-06-25  发布在  Go
关注(0)|答案(3)|浏览(124)

我尝试安装Django 1.4.3,但当我执行pip install时,pip一直安装Django 1.5版本,而不是1.4.3
sudo pip install -I Django==1.4.3
它返回:

Downloading/unpacking Django==1.4.3
  Running setup.py egg_info for package Django
    
    warning: no previously-included files matching '__pycache__' found under directory '*'
    warning: no previously-included files matching '*.py[co]' found under directory '*'
=== >>>> Requested Django==1.4.3, but installing version 1.5 <<<< ====
Installing collected packages: Django
  Found existing installation: Django 1.5
    Uninstalling Django:
      Successfully uninstalled Django
  Running setup.py install for Django
    
    warning: no previously-included files matching '__pycache__' found under directory '*'
    warning: no previously-included files matching '*.py[co]' found under directory '*'
    changing mode of /usr/local/bin/django-admin.py to 755
Successfully installed Django
Cleaning up...

但如果我执行点冻结,它继续显示
Django==1.5
我做错了什么?

c9x0cxw0

c9x0cxw01#

这可以/应该/可以通过在pip中清除Django的构建目录来帮助。从版本1.1 see here for details开始,存在此错误
如果你使用的是OS X或unix之类的系统,你可以从这里开始检查这些文件夹:

~/.pip 
/tmp/pip-build-root (or pip-build-$USER, if you aren't running pip as root).

这是因为在安装Django的第一个版本时,您没有指定新的构建文件夹。
祝你好运!

pokxtpni

pokxtpni2#

作为limelight says,您应该清空缓存和构建目录,或者传入一个带有--download-cache和标志的临时干净位置。

$ pip help install
[...]
--download-cache <dir>      Cache downloaded packages in <dir>.
-b, --build <dir>           Directory to unpack packages into and build in. The default in a virtualenv is "<venv path>/build". The default for global installs is
                          "<OS temp dir>/pip-build-<username>".

我想警告任何读者不要使用sudo pip install来安装Django。它在整个系统范围内安装Django。并且更改系统范围的版本可能会破坏依赖于它的系统包。例如,Ubuntu MAAS和Cobbler依赖于系统django包。这些通常是您不希望中断的服务。
如果您需要一个不同于系统包的版本,请使用virtualenv将您的依赖项与系统隔离。
OP似乎是在OSX上,我不知道任何服务器范围的Mac Django,但这可能会改变。考虑用sudo安装python包,以将系统安装的python更改为python3;现在可能有效,但要有一些扑热息痛,因为你会有些头痛。

2jcobegt

2jcobegt3#

检查您的本地缓存,并删除它可以帮助.我已经安装了pymongo==2.5.2。为了安装pymongo==2.4.1,我删除了/tmp/pip-build-root/pymongo中该高速缓存。然后我成功安装了pymongo 2.4.1。

相关问题