我正在尝试用Ubuntu在Windows子系统上为Linux配置venv
。
我尝试过的:
1( 通过pip
安装venv
(确切地说是pip3
(
pip3 install venv
我得到以下错误
ERROR: Could not find a version that satisfies the requirement venv (from versions: none)
ERROR: No matching distribution found for venv
2( 安装venv
至apt
和apt-get
sudo apt install python3-venv
在这种情况下,安装似乎已经完成,但当我尝试使用python3 -m venv ./venv
创建虚拟环境时,我遇到了一个错误,告诉我要执行apt-get install python3-venv
(我刚刚执行了!(
The virtual environment was not created successfully because ensurepip is not
available. On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.
apt-get install python3-venv
You may need to use sudo with that command. After installing the python3-venv
package, recreate your virtual environment.
Failing command: ['/mnt/c/Users/Vicubso/.../code/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']
我还阅读了以下帖子支柱1,帖子2和其他几个帖子。这些似乎都不能解决我的问题。
任何帮助都将不胜感激。
这里没有任何东西对我有效,但在WSL2:中有效
sudo apt-get update
sudo apt-get install libpython3-dev
sudo apt-get install python3-venv
python3.8 -m venv whatever
祝你好运!
尝试一下这种方法:
安装pip:
sudo apt-get install python-pip
安装虚拟环境:
sudo pip install virtualenv
将虚拟环境存储在某个位置:
mkdir ~/.storevirtualenvs
现在你应该能够创建一个新的虚拟
virtualenv -p python3 yourVenv
激活:
source yourVenv/bin/activate
要退出您的新虚拟机,只需deactivate
这比它需要的更令人头疼。它似乎与WSL<->;Windows文件系统映射问题。这篇博客文章可能对它进行了更好的描述,但正如本MS devblog中所描述的那样,网络是您需要在特定装载上存储额外的元数据和文件。
我通过运行解决了这个问题
sudo umount /mnt/c
sudo mount -t drvfs C: /mnt/c -o metadata
之后,我可以创建python venv而不需要sudo。
当您处于/mnt/XXX
(在Windows部分下(时会发生错误。
通过cd
切换到Linux部分并再次运行python3 -m venv ./venv
,这应该是好的
我收到了同样的错误消息,我的电脑上安装了WSL(Ubuntu(,最后我找到了这个文档:https://learn.microsoft.com/en-us/windows/python/web-frameworks#open-a-wsl-远程窗口具有讽刺意味的是,与我使用的命令唯一的区别是名称,我使用的是venv,然后我使用.venv再次运行该命令,使文件变成隐藏文件,并且它起作用了。希望它能帮助其他人:(
您还需要通过sudo apt install python3.8-venv
这为我解决了问题。