在WSL(Ubuntu)中安装用于python3的venv

在WSL(Ubuntu)中安装用于python3的venv,python,python-3.x,ubuntu,windows-subsystem-for-linux,python-venv,Python,Python 3.x,Ubuntu,Windows Subsystem For Linux,Python Venv,我正在尝试在带有Ubuntu的Linux Windows子系统上配置venv 我所尝试的: 1) 通过pip安装venv(pip3,确切地说) 我得到以下错误 ERROR: Could not find a version that satisfies the requirement venv (from versions: none) ERROR: No matching distribution found for venv 2) 通过apt和apt-get安装venv sudo apt

我正在尝试在带有Ubuntu的Linux Windows子系统上配置
venv

我所尝试的:

1) 通过
pip
安装
venv
pip3
,确切地说)

我得到以下错误

ERROR: Could not find a version that satisfies the requirement venv (from versions: none)
ERROR: No matching distribution found for venv
2) 通过
apt
apt-get安装
venv

sudo apt install python3-venv
在本例中,安装似乎已完成,但当我尝试使用
python3-m venv./venv创建虚拟环境时,我收到一个错误,告诉我执行
apt-get-install python3 venv
(我刚刚执行了!)

我也读过以下文章 , ,以及其他一些。这些似乎都不能解决我的问题


任何帮助都将不胜感激。

尝试一下这种方法:

安装pip:

sudo apt-get install python-pip
安装虚拟环境:

sudo pip install virtualenv
将虚拟环境存储在以下位置:

mkdir ~/.storevirtualenvs
现在,您应该能够创建一个新的virtualenv

virtualenv -p python3 yourVenv
要激活:

source yourVenv/bin/activate

要退出新的virtualenv,只需停用

这里的任何内容对我都不起作用,但在WSL2中确实起到了作用:

apt-get update
apt-get install libpython3-dev
apt-get install python3-venv
python3.8 -m venv whatever

祝你好运

。它似乎与WSLWindows文件系统映射问题有关。也许对它的描述更好,但网络是您需要在特定的挂载上存储额外的元数据和文件,如前所述

我通过运行以下命令修复了此问题:

sudo umount /mnt/c
sudo mount -t drvfs C: /mnt/c -o metadata

在此之后,我可以创建python venv,而无需sudo。

它似乎可以工作。但我不知道这是否是理想的解决方案。当我用
virtualenv yourVenv
创建一个虚拟环境时(也许你的答案中有输入错误?),它只有在我使用
sudo
时才起作用。也。。。使用
virtualenv
而不是
venv
有什么好处吗?但是非常感谢。至少现在我有东西可以继续我的工作了。看这个。它讨论了运行程序的不同变体和环境。有些解释是针对windows而不是linux系统的。非常感谢!现在对所有这些选项有了更好的了解。我接受你的回答,因为它解决了我的问题。我在找到正确的存储库时遇到了一些问题。。。在安装
python-pip
时添加
--fix missing
似乎可以解决问题。我认为,最近对WSL的更新已经使当前接受的答案无效。这通过wsl.exe对我有效,而其他建议给出了很多错误。并且您需要sudo来执行您提到的命令。它适用于我,但不再适用于以前的命令+1这是唯一对我有用的,非常感谢!
apt-get update
apt-get install libpython3-dev
apt-get install python3-venv
python3.8 -m venv whatever
sudo umount /mnt/c
sudo mount -t drvfs C: /mnt/c -o metadata