web-dev-qa-db-ja.com

「OSError:[Errno 13] Permission denied」エラー

Virtualenv環境を作成しようとしていますが、このエラーが発生します。

user@mylaptop:~$ virtualenv -p ~/Public/Programming/project1/
Running virtualenv with interpreter /home/user/Public/Programming/Project1/
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 9, in <module>
    load_entry_point('virtualenv==12.0.6', 'console_scripts', 'virtualenv')()
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 784, in main
    popen = subprocess.Popen([interpreter, file] + sys.argv[1:], env=env)
  File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied

どうすればいいですか?

6

~/Public/Programming/project1/ディレクトリに仮想環境を作成するために使用するPythonインタープリターを指定していません。

man virtualenvから:

-p PYTHON_EXE,--python=PYTHON_EXE
The Python interpreter to use to create the new environment.

-pオプションは、次の引数が新しい環境のベースとなるpythonインタープリターであると想定しています。しかし、あなたはその引数を逃し、virtualenv~/Public/Programming/project1/インタープリターに基づいて環境を構築したいと考えています。しかし、そこには利用可能なインタプリタがないため、OSErrorを取得します。

Python 2.7を使用する場合、正しいコマンドは次のとおりです。

virtualenv -p python2.7 ~/Public/Programming/project1/

Python 3.4の場合、次のようになります。

virtualenv -p python3.4 ~/Public/Programming/project1/
1
Aditya