Python 2.7およびPython 3.5に付属するUbuntu 16.04を使用しています。 Python 3.6をインストールし、alias python3=python3.6
を介してpython3にpython3をシンボリックリンクしました。
次に、Sudo -H pip3 install virtualenv
を使用してvirtualenv
をインストールしました。チェックすると、virtualenvが"/usr/local/lib/python3.5/dist-packages"
の場所にインストールされたため、python3 -m venv ./venv1
を使用してvirtualenvを作成しようとすると、エラーがスローされます。
Error Command: ['/home/wgetdj/WorkPlace/Programming/Python/myvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']
私は何をすべきか?
通常、$ python3 -m venv myvenv
を使用して新しいvirtualenvを作成します(ここでmyvenv
はvirtualenvの名前です)。
私の場合と同様に、システムにpython3.5
とpython3.6
の両方がある場合、エラーが発生する可能性があります。
注: Debian/Ubuntuの一部のバージョンでは、次のエラーが表示される場合があります。
The virtual environment was not created successfully because ensure pip is not available. On Debian/Ubuntu systems, you need to install the python3-venv package using the following command.
apt-get installpython3-venv
You may need to use Sudo with that command. After installing the python3-venv package, recreate your virtual environment.
この場合、上記の手順に従って、python3-venvパッケージをインストールします。
$ Sudo apt-get install python3-venv
注: Debian/Ubuntuの一部のバージョンでは、現在このような仮想環境を開始すると次のエラーが発生します。
Error Command: ['/home/wgetdj/WorkPlace/Programming/Python/myvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']
これを回避するには、代わりにvirtualenvコマンドを使用します。
$ Sudo apt-get install python-virtualenv
$ virtualenv --python=python3.6 myvenv
注:次のようなエラーが表示された場合
E:パッケージpython3-venvが見つかりません
代わりに実行します:
Sudo apt install python3.6-venv
python3.6
の代わりにpython3.6-venv
経由でppa:deadsnakes/ppa
とppa:jonathonf/python-3.6
をインストールするとうまくいきました
apt-get update \
&& apt-get install -y software-properties-common curl \
&& add-apt-repository ppa:deadsnakes/ppa \
&& apt-get update \
&& apt-get install -y python3.6 python3.6-venv
問題は間違ったロケールに関連している可能性があると思います。 /etc/environment
に次の行を追加して修正しました。
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
次のコマンドを使用して、bashからファイルを取得する必要があります。
source /etc/environment