How to Install Python 3.11 on Ubuntu 22.04 LTS

Python is one of the most popular high-level languages, focusing on high-level and object-oriented applications from simple scrips to complex machine learning algorithms. Python is famous for its simple, easy-to-learn syntax, emphasizes readability, and reduces program maintenance costs and more straightforward conversion to newer releases. Python supports modules and packages, and one of the many is the popular PIP package manager.

Some of the features Python can do:

  • Python can be used on a server to create web applications.
  • Python can be used alongside software to create workflows.
  • Python can connect to database systems. It can also read and modify files.
  • Python can be used to handle big data and perform complex mathematics.
  • Python can be used for rapid prototyping or production-ready software development.

What’s new in Python 3.11:

  • New Features. Enhanced error locations in tracebacks. Column information for code objects.
  • Other Language Changes.
  • Other CPython Implementation Changes.
  • New Modules.
  • Improved Modules. asyncio. fractions.
  • Optimizations.
  • Faster CPython. Faster Startup.

For the official Python 3.11 rundown notes, visit the official Python webpage What’s New in Python 3.11.

In the following tutorial, you will learn how to download the latest Python 3.11 and install the archive format or use a PPA with this version of Python on Ubuntu 22.04 LTS Jammy Jellyfish using the command terminal, along with how to download and compile as an alternative method.

Table of Contents


Update Ubuntu

Before you begin, run a quick update to ensure your system is up-to-date to avoid conflicts during the tutorial and good system maintenance.

sudo apt update && sudo apt upgrade

Install Python 3.11 – PPA Method

The first and easiest solution for Ubuntu users would be to import the “deadsnakes” team Launchpad PPA. This will always contain the latest updates for Python and all extra packages that may be required.

First, install the prerequisite for adding custom PPAs.

sudo apt install software-properties-common -y

Second, add the deadsnakes/ppa to your APT package source list with the following command.

sudo add-apt-repository ppa:deadsnakes/ppa -y

Once the repository has been imported, run an APT update to fresh your package manager to reflect the new imported PPA.

sudo apt update

You can now install Python 3.11 by executing the following code:


sudo apt install python3.11 -y

To verify the installation and Python 3.11 build version, perform the following.

python3.11 --version

Example output:

How to Install Python 3.11 on Ubuntu 22.04 LTS

Optionally, you can install the following extras.

See also  How to Install OpenShot on Ubuntu 22.04 LTS

Install development headers for building C extensions:

sudo apt install python3.11-dev -y

Install the standard library (venv) module:

sudo apt install python3.11-venv -y

Install the standard library (distutils) module:


sudo apt install python3.11-distutils -y

Install the (2to3.3.11) utility as well as the standard library (lib2to3) module:

sudo apt install python3.11-lib2to3 -y

Install the standard library (dbm.gnu) module:

sudo apt install python3.11-gdbm -y

Install the standard library (tkinter) module:

sudo apt install python3.11-tk -y

Alternative – Nightly Builds

For developers that require the latest nightly builds, the PPA has an additional branch for these builds. However, they should only be used by professionals and developers that require the use of such builds.

Please note that developers or testers should only use this. The stable repository should suit nearly all users and is updated just as often as the nightly version. Also, this PPA can break, meaning you may need to revert to the stable repository.

sudo add-apt-repository ppa:deadsnakes/nightly -y

If you have the default 3.11 stable by (deadsnakes/ppa), you can run the apt update command to upgrade the existing packages.


sudo apt update

Then upgrade the packages:

sudo apt upgrade

If you do not have Python installed, use the installation command, and along with the same commands, add the extra packages such as dev, and venv packages, as shown in the stable branch tutorial rundown.

sudo apt install python3.11 -y

Suppose you want to roll back to the stable PPA. First, remove python 3.11.

sudo apt autoremove python3.11*

Next, remove the Nightly build PPA by adding the –remove to the original command as shown below.

sudo add-apt-repository --remove ppa:deadsnakes/nightly -y

Once done, update the APT repository list to reflect the removal.

sudo apt update

Now re-install Python 3.11; do not forget to re-add the stable repository. By default, you should have kept this.


Install Python 3.11 – Manual Method

Download Python 3.11

First, visit the official download page and grab the latest version or the particular one you are after. The exact instructions should work on any version since you are compiling it. Once you have copied the link, use the wget command to download the Python 3.11 archive.



See also  How to Install Videomass on Ubuntu 22.10/22.04/20.04

Extract the Python archive, and remember to change the version number if you downloaded a newer one.

tar -xf Python-3.11.{version}.tar.xz

Optionally, move Python 3.11 to a proper destination such as the /opt/ directory.

sudo mv Python3.11.{version} /opt/

Now install the dependencies required to install Python 3.11.

sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev curl libbz2-dev pkg-config make -y

Navigate to the directory.


cd /opt/Python3.11.{version}/

Now, run the ./configure –enable-optimizations command.

./configure --enable-optimizations --enable-shared

Note, The script performs several checks to make sure all of the dependencies on your system are present. The ./configure –enable-optimizations will optimize the Python binary by running multiple tests, which will make the build process slower.

Now that you have built and configured the environment, it is time to compile it with the command make.


A handy trick is to specify the -j <number of cpu> as this can significantly increase compiling speed if you have a powerful server.

For example, the LinuxCapable machine has 6 CPUs, and I can use all six or at least use 4 to 5 to increase speed.

make -j 6

Once you have finished building, install Python binaries as follows:


sudo make altinstall

Note, it is advised to use the make altinstall command NOT to overwrite the default Python 3 binary system.

Next, after the installation, you need to configure the dynamic linker run-time bindings with the ldconfig command.

sudo ldconfig /opt/Python3.11.{version}

Note, do not skip this, or you will face issues. You will also need to replace the path with your directory name and version.

Confirm that Python 3.11 is installed and the build version by running the following command:

python3.11 --version

Example output:

How to Install Python 3.11 on Ubuntu 22.04 LTS

Create a Virtual Environment

Python’s venv module is a virtual environment is a Python environment such that the Python interpreter, libraries, and scripts installed into it are isolated from those established in other virtual environments, and (by default) any libraries installed on your operating system, for example, those that are installed on your Ubuntu system to avoid clashing and disturbing your production environments.


To ensure Python 3.11 is installed correctly and functioning, create a quick Python project.

See also  How to Install SeaMonkey on Ubuntu 22.10/22.04/20.04

First, create the project directory and navigate to it:

mkdir ~/test_app && cd ~/test_app

Inside the project root directory, run the following command to create a virtual environment for the test name test_app.

python3.11 -m venv test_app_venv

Next, activate the virtual environment as follows.

source test_app_venv/bin/activate

After starting the virtual environment, you will now be in the shell prompt terminal. This will show the name of your environment that will be prefixed.



How to Install Python 3.11 on Ubuntu 22.04 LTS

To exit the virtual environment, use the following command:


Install Python PIP with 3.11

By default, installing python-3.11 using the following APT command should work for all those using the Python PPA repository.

sudo apt install python3-pip

The manual installation method should have attached PIP; if not, it is advised to install PIP by downloading using the wget command.


Next, install the file downloaded.


Once installed, it is a good idea to check for upgrades.

python3.11 -m pip install --upgrade pip

Example output:


How to Install Python 3.11 on Ubuntu 22.04 LTS

Now verify the PIP 3.11 version installed with the following command.

pip3.11 --version

Example output:

How to Install Python 3.11 on Ubuntu 22.04 LTS

Comments and Conclusion

In the tutorial, you have learned how to install Python 3.11 and create a virtual test environment on Ubuntu 22.04 LTS Jammy Jellyfish desktop or server.

At the moment of the tutorial, currently, Python 3.10 is the latest stable release, with Python still in beta mode. However, this will change soon enough and should be considered to be installed for future development work.

Not what you were looking for? Try searching for additional tutorials.

Leave a Comment