安装Django时出错

问题描述 投票:3回答:5

我试图在我昨天得到的新Mac上安装Django。我正在从Windows切换,但我不认为这应该是一个很大的问题。每次我尝试安装版本1.6.5或开发版本时我都会遇到同样的错误:

Exception:
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/commands/install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", line 1435, in install
    requirement.install(install_options, global_options, *args, **kwargs)
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", line 671, in install
    self.move_wheel_files(self.source_dir, root=root)
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", line 901, in move_wheel_files
    pycompile=self.pycompile,
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/wheel.py", line 215, in move_wheel_files
    clobber(source, lib_dir, True)
  File "/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip/wheel.py", line 205, in clobber
    os.makedirs(destdir)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/django'

Storing debug log for failure in /Users/Peter/Library/Logs/pip.log
python django
5个回答
3
投票

尝试使用sudo,它对我有用:

sudo pip install django

2
投票

此错误是因为您的帐户没有任何权限访问安装目录。如果安装目录是系统拥有的目录,则可能需要以administrator"root" account身份登录。

以root身份登录:

sudo su

通过使用setup_tool,您可以轻松升级django的版本。在Linux上,您可以使用以下命令安装easy_install

sudo apt-get install python-setuptools

然后运行:

 sudo easy_install --upgrade django

这将从PYTHON_PATH中删除当前的django路径,添加自己的路径,并将django升级到其最新版本。


1
投票

创建一个vitualenv已经为我解决了这个问题。我最近安装了Python3.4并希望使用Django 1.8.X。正如预期的那样,Sudo pip安装允许导入Django并与默认的python 2.7一起使用,但尝试导入生成的错误。我的解决方案汇集在不同的网站上 - 经过大约3个小时的调查后产生了......

在终端:

$ virtualenv -p /usr/local/bin etc/pythonX.X env

这会创建一个名为env的virtualenv,但是专门使用你想要的python版本。检查python版本所在的位置$ pythonX.X然后使用带-p标志的路径。使用$ python -V检查您是否正在使用正确的python。然后

$ source env/bin/activate

此时你可以pip安装你需要的包

$pip install django 

一切都很好......跑步:

$python 
>>>import django
>>>django.VERSION

显示它已成功导入。我希望这有帮助 - 首先发布S / O,希望我有正确的回答风格,这有帮助!所有的交流都欢迎


0
投票

您正在尝试在全局python级别安装python并需要root权限才能安装其他库。你可以sudo pip install django解决这个问题。

但是,最佳做法是使用虚拟环境。这允许您处理多个python项目,每个项目都有自己的库集合。 https://virtualenv.pypa.io/en/latest/

它很容易设置:

首先安装pip,然后是virtualenv,如果你愿意的话,安装virtualenvwrapper:

sudo easy_install pip
sudo pip install virtualenv
sudo pip install virtualenvwrapper
mkdir ~/.virtualenv

将其添加到〜/ .profile中

export WORKON_HOME=~/.virtualenv
source /usr/local/bin/virtualenvwrapper.sh

你就定了。使用以下命令创建名为“temp”的新虚拟环境:

mkvirtualenv temp

要开始在环境中工作:

workon temp

从这里你可以pip install django作为你当前的用户。要离开virtualenv,只需输入:

deactivate

完整说明:http://virtualenvwrapper.readthedocs.org/en/latest/install.html


0
投票

在High Sierra上安装时遇到了同样的问题。就我而言,这是pip版本问题。甚至

pip install --upgrade

无法升级点数版本。所以我从文件夹中删除了旧的pip / pip2.7 / pip3并启动了新的刷新。安装了新的pip版本18。

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

然后,

python get-pip.py

在那之后,这是一个蛋糕。

在安装之前,请使用检查您的默认python版本

哪个python

命令。万一它是3,你很高兴。否则,打开bash配置文件并更改默认的python版本。 (不推荐)。

© www.soinside.com 2019 - 2024. All rights reserved.