Enable Dark Mode!
By: Muhammed Rishad

How to Setup Odoo 17 Development Environment Using Pycharm in Ubuntu 20.04

Technical Odoo 17 Odoo Community

Version 17, the most recent edition of Odoo, has the greatest functionality and is the most well-known and capable version of the program for attaining the best possible business administration. Python 3.10+ is used for backend development in Odoo 17, PostgreSQL is used for the database server, and Javascript is used for frontend development.

Ubuntu 20.04 is a Long-Term Support (LTS) version, meaning it will get regular app updates and essential security patches for the next five years. New Linux kernel versions and graphics driver upgrades are released every six months as software updates.

We will discuss how to use the Pycharm IDE in Ubuntu 20.04 to build up a development environment for Odoo 17.

Therefore, before setting up Pycharm, we need to install a few necessary libraries and packages to run Odoo. Let's examine that in more detail.

Step 1: Download and install the Pycharm IDE

We're going to install the Pycharm Community version here, and your machine must fulfill a few basic requirements to run Pycharm.

The requirements necessary to install Pycharm on your computer are:

RAM4 GB of free RAM8 GB of total system RAM
CPUAny modern CPUMulti-core CPU. PyCharm supports multithreading for different operations and processes making it faster the more CPU cores it can use.
Disk space3.5 GBSSD drive with at least 5 GB of free space
Monitor resolution1024×7681920×1080
Operating system

Officially released 64-bit versions of the following:


Microsoft Windows 10 1809 or later


Windows Server 2019 or later


macOS 10.15 or later


Any Linux distribution that supports Gnome, KDE, or Unity DE.


PyCharm is not available for Linux distributions that do not include GLIBC 2.27 or later.


Pre-release versions are not supported.

Latest 64-bit version of Windows, macOS, or Linux (for example, Debian, Ubuntu, or RHEL)

You may install Pycharm by downloading the Debian installation file from the following URL. 


Alternatively, you may install Pycharm by using the instructions.

To do so, launch Terminal (Ctrl + Alt + T to launch Terminal) and run the following commands:

sudo apt-get update 
sudo apt-get upgrade
sudo snap install pycharm-community --classic

Step 2: Install Python 3.10:

The most recent Python 3.10 version is not accessible in Ubuntu's default repository. As a result, we must add another repository. Python Packages may be found in the deadsnakes repository on launchpad.

Using the commands below, add the deadsnakes repository.

sudo add-apt-repository ppa:deadsnakes/ppa 
sudo apt-get update

Using this command, you may check the updated Python package list.

apt list | grep python3.10

Python 3.10 can be installed using the following command:

sudo apt-get install python3.10

The following code may be used to install the required packages for Python3:

sudo apt-get install python3-dev build-essential libjpeg-dev libpq-dev libjpeg8-dev libxml2-dev libssl-dev libffi-dev libmysqlclient-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev liblcms2-dev 

Step 3: Install web dependencies:

Installing the web dependencies is the next step.

sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs/usr/bin/node 
sudo npm install -g less less-plugin-clean-css 
sudo apt-get install -y node-less

Step 4: Install the wkhtmltopdf:

If you want to publish Odoo reports, you must install Wkhtmltopdf, which can be done with the following code.

sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb 
sudo apt install -f

Step 5: Install PostgreSQL

Next, we must install PostgreSQL:

sudo apt install postgresql postgresql-client

Step 6: Configure a Database User Role for Odoo Databases.

Create a database user with the following instructions, and specify a password for the separate user because it will be required when creating the conf file, so save it.

sudo su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo17

Set the specified user as the superuser.


Exit from both psql and the Postgres user.


Step 7: Get Odoo 17 Source Code

Odoo 17 Community Source code may be obtained straight from Odoo's Github source. Otherwise, you may clone it from git. Install git and then run the following commands:

sudo apt-get install git

The command below will clone the Odoo code into the Odoo17 directory within your home directory.

git clone https://www.github.com/odoo/odoo --depth 1 --branch 17.0 --single-branch odoo17

Step 8: Open the Odoo project in Pycharm

Open Pycharm Community and navigate to the Odoo17 directory. After the project is open, a dialogue box similar to the one seen in the picture below may appear. This is used to build a virtual environment; however, we will construct a virtual environment via the terminal, so cancel it.


To open the terminal, click on the icon shown below or use the command Alt+F12.


Then, use the commands below to create a venv with Python 3.10.

curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10
sudo apt install python3.10-venv
python3.10 -m venv your_venv_name


You will be able to observe that your virtual environment has been enabled after closing and reopening the terminal; you will see the indicator in the terminal as shown below with your venv name.


If this does not activate your venv, use the following command.

source  your_venv_name/bin/activate

Step 9: Install the required Python packages

Odoo requires the installation of various Python packages, which are stated in the file requirement.txt within the Odoo17 directory. As a result, run this command in the terminal.

pip install -r requirements.txt


In case you don't find any errors, you can use the command below to test whether all of the requirements stated in requirements.txt have been installed.

pip list


If you run into any errors, go to the requirements.txt file and install each requirement one by one with the command below.

pip install requirement_name

Example 1:


Example 2:


In most cases, when installing packages that are specified twice, only one of them should be installed. So, even if one of them fails to install, it should not be a problem.

Also, if some prerequisites defined with sys_platform as 'win32' fail to install, do not install them.

If any errors occur during installing the package "psycopg2==2.9.2 ; sys_platform != 'win32' and python_version <= '3.10' or psycopg2==2.9.5 ; python_version > '3.10' or sys_platform == 'win32'" instead, use the command below to install another package.

pip install psycopg2-binary

Step 10: Create the odoo.conf file within the Odoo17 directory

You can create conf file by right-clicking the directory and select New -> File -> odoo.conf

After inserting the following block into the file odoo.conf, you should update the db_password, which is the password you specified for the database user Odoo17 in the previous stage.

admin_passwd = admin
db_host = localhost
db_port = 5432
db_user = odoo17
db_password = your_password
addons_path = /home/user/odoo17/addons
xmlrpc_port = 8017

Also, replace the addons_path value using the real path to the Odoo17 addons directory.  You may accomplish this by pressing Ctrl + Shift + C in the addons directory. You will then be given the path to the current directory. Replace it in the addons_path. You may also create a new directory to include your custom modules; the path to that directory must be supplied in the addons_path, separated by commas. 

eg: addons_path = /home/user/odoo/addons, /home/user/odoo/custom_addons

Step 11: Add Python Interpreter

Go to Settings -> Project: odoo17 -> Python Interpreter to configure a Python interpreter.


When you open the aforementioned window, if the interpreter (python 3.10 from Odoo17 venv) is already set up, you don't need to make any changes. Otherwise, select the Add Interpreter option and make the following selections.


Step 12: Add Project configuration in Pycharm

In order to configure, Go to Edit Configurations under Current File.


When the dialogue box below shows up, click the "+" button and select "Python" from the list.

After that, you may fill in the fields as seen in the picture below.


Name: You are free to give the configuration any name.

Python Interpreter: This project's Python Interpreter needs to be included here. Because we had set the interpreter in the previous stage, it will fill in automatically.

Script Path: Choose the "odoo-bin" file from the directory odoo17.

Parameters: You can add parameters here to run with the script; the parameter -c is necessary, and you can add additional ones. You can also need to add the conf file in the parameter.

Working location: You must include the location for the project's current working folder here.

Step 13: Test Run Odoo 17

Odoo's setup is finished. You may now try it by clicking the button below to launch the project.


You may now test localhost:8017 in your browser. The browser will open the Odoo database management, as seen below if all of your settings are successful.


This is how Ubuntu 20.04 users may set up an Odoo 17 Pycharm development environment.

To read more about setting up Odoo 16 development environment using Pycharm in Ubuntu 22.04, refer to our blog How to Setup Odoo 16 Development Environment Using Pycharm in Ubuntu 22.04

If you need any assistance in odoo, we are online, please chat with us.



I try to install depend your document but last my odoo service not active.i want install ubuntu 20.04 odoo 17 but python package version error.any changes or modification?




Leave a comment




Cybrosys Technologies Pvt. Ltd.
Neospace, Kinfra Techno Park
Kakkancherry, Calicut
Kerala, India - 673635



Cybrosys Technologies Pvt. Ltd.
1st Floor, Thapasya Building,
Infopark, Kakkanad,
Kochi, India - 682030.



Cybrosys Techno Solutions
The Estate, 8th Floor,
Dickenson Road,
Bangalore, India - 560042

Send Us A Message