Reputation: 11
I tried to run pip install flask
on Arch Linux and I get the following error:
Collecting itsdangerous>=0.24 (from flask)
Using cached https://files.pythonhosted.org/packages/dc/b4/a60bcdba945c00f6d608d8975131ab3f25b22f2bcfe1dab221165194b2d4/itsdangerous-0.24.tar.gz
Collecting MarkupSafe>=0.23 (from Jinja2>=2.10->flask)
Using cached https://files.pythonhosted.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz
Installing collected packages: Werkzeug, click, MarkupSafe, Jinja2, itsdangerous, flask
Running setup.py install for MarkupSafe ... done
Running setup.py install for itsdangerous ... error
Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9u23zlnf/itsdangerous/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-r51zrnnv-record/install-record.txt --single-version-externally-managed --compile:
running install
running build
running build_py
creating build
creating build/lib
copying itsdangerous.py -> build/lib
running install_lib
copying build/lib/itsdangerous.py -> /usr/lib/python3.6/site-packages
byte-compiling /usr/lib/python3.6/site-packages/itsdangerous.py to itsdangerous.cpython-36.pyc
error: [Errno 13] Permission denied: '/usr/lib/python3.6/site-packages/__pycache__/itsdangerous.cpython-36.pyc.140591598548528'
----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9u23zlnf/itsdangerous/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-r51zrnnv-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-9u23zlnf/itsdangerous/
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.`
What does this error mean?
Upvotes: 1
Views: 2743
Reputation: 51
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
Upvotes: 0
Reputation: 7242
Use
pip install --user flask
instead.
You are getting a Permission Denied error which means that you don't have access to write to a specific location.
When you are using pip install flask
, pip
will try to install the package flask
somewhere in /usr/lib/python3.6/../
. This directory requires root access something you don't have at the time you were running pip install flask
.
By using the --user
flag, you are telling pip
to install the package to your home directory which does not require root permissions.
It's always a good practice to install Python packages using the --user
flag because you are not installing that package system-wide. When you use sudo pip install package_name
then you are installing/upgrading a package (with dependencies) system-wide. Python in some systems power-up critical system components, forcing the system to install a new version of a package might break some critical system component. Usually, systems are stuck to a specific package version just to support backwards-compatibility, you might break this if you try to install it as a sudo.
Upvotes: 4