Install Python 3.9.1 on WSL
This article summarizes the steps to install Python 3.9.1 on Windows Subsystem for Linux Debian distro. You can also apply them to other similar distros.
Installation steps
Run the following commands in your WSL terminal.
1) Update package lists
sudo apt update
2) Install dependent libraries
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev curl libbz2-dev
3) Download Python binary package
wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
4) Unzip the package
tar -xzf Python-3.9.1.tgz
5) Execute configure script
cd Python-3.9.1
./configure --enable-optimizations
6) Build Python 3.9
make -j 2
7) Install Python 3.9
sudo make install
Verify the installation
Run the following command to install Python 3.9:
$ python3.9
Python 3.9.1 (default, Jan 8 2022, 14:44:10)
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
Make Python 3.9 the default
If you want to make Python 3.9 the default python program, you can follow these steps:
1) Change ~/.bashrc file to add the following line:
alias python='/usr/local/bin/python3.9'
2) And then run the following command to make it effective:
source ~/.bashrc
You can verify it using python command directly:
python --version
Python 3.9.1
References
- How to Install Python 3.9 on Debian 10
- How to change from default to alternative Python version on Debian Linux
Hi, it is because the package is not available directly at the time when this article was published.
Ah, then this has nothing to do with WSL, then. It's "how to install a python version higher than that bundled with the distro". This would happen in regular Debian as well.
Where is pip? It does not seem to be installed
Hi Cathy,
From Python 3.4, pip is included as part of Python installation binary.
Can you try the following command?
pip3
OR
python -m pip
If you find the pip is not installed by default, try using the following command to install it:
python -m ensurepip --default-pip
Reference:
Thanks so much for getting back to me! I cant find the pip3 executable, but I have been able to install modules with:
python -m pip install [module_name]
You are welcome! If you have other related questions, feel free to post it here.
I don't understand why you would build python from source.
On WSL Debian bullseye:
followed by the download and install and to prove the point: