我正在使用Amazon Linux AMI(版本2013.09)。 除了其他方面,我的目标是让Django运行起来。 所以这就是我的工作:
这似乎很好,直到我尝试使用manage.py。以下一行:
python manage.py collectstatic --noinput -c -l > /dev/null
调用以下错误:
OSError: [Errno 2] No such file or directory: '...my-env/lib/python2.7/site-packages/django/contrib/admin/static'
这是事实,因为整个Django基础架构都在 dist-packages ,而不是 site-packages 。 修复此依赖关系的正确方法是什么?
谢谢!
更新28.06.15 Django尝试访问site-packages的原因是其settings.py文件中的'STATIC_ROOT'定义。 事情是,我几年前使用相同的设置以完全相同的方式安装了Django,并且它工作得很好。 那么改变了什么?为什么pip突然转移到dist-packages?
答案 0 :(得分:6)
有时会在shell中设置PYTHON_INSTALL_LAYOUT="amzn"
,然后烦恼地进入dist-packages
。
要禁用此烦恼,
unset PYTHON_INSTALL_LAYOUT