システムに正常にインストールされvirtualenv
ましvirtualenvwrapper
た。それは完全に機能しています。pynumeric
将来の利便性のために、すべてのお気に入りのモジュールを という名前の環境にインストールするスクリプトを作成し、 に配置したいと考えています~/.virtualenvs
。このスクリプトではvirtualenvwrapper
、スクリプト内から使用する必要があります。残念ながら、これはどういうわけか私にとってはうまくいきません。workon
存在しmkvirtualenv
ないエラーが発生し続けます。
したがって、基本的に私の質問は次のようになります: Python スクリプト内からではなくvirtualenvwrapper
、ターミナルで機能するのはなぜですか?
install_pynumeric.py (編集)
#!/usr/bin/python
import os
import sys
import subprocess as sp
# Set CPU frequency governer to performance
#sp.check_call('cpuset gov performance', shell=True)
# Check for parent directory of virtual environments
if not os.path.isdir('/home/carlos/.virtualenvs'):
sys.exit('The parent directory for virtual environments does not exist yet. Create it before preceeding.')
# Create virtual environment pynumeric if it does not exist yet and activate
if not os.path.isdir('/home/carlos/.virtualenvs/pynumeric'):
sp.check_call('mkvirtualenv pynumeric', shell=True)
# Activate pynumeric
sp.check_call('workon pynumeric', shell=True)
# List of Python modules to be installed
modules = ['numpy',
'scipy',
'sympy',
'matplotlib',
'pyqt4',
'sphinx',
'rope',
'pyflakes',
'ipython',
'pylint',
'psutil',
'spyder',
'pydstool'
]
# Install modules
for m in modules:
cmd = 'pip install ' + m
sp.check_call(cmd, shell=True)
# Deactivate pynumeric
sp.check_call('deactivate', shell=True)
# Set CPU frequency governer to ondemand
#sp.check_call('cpuset gov ondemand', shell=True)
次のエラーが表示されます。
/bin/sh: mkvirtualenv: command not found
Traceback (most recent call last):
File "./install_pynumeric.py", line 16, in <module>
sp.check_call('mkvirtualenv pynumeric', shell=True)
File "/usr/lib/python2.7/subprocess.py", line 542, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'mkvirtualenv pynumeric' returned non-zero exit status 127