Skip to main content

Build AYON launcher on Linux

WARNING: Linux needs distribution specific steps.

Requirements


To build AYON you will need some tools and libraries. We do not provide any of these tools. You have to install them yourself.

Python 3.9.0 is not supported because of this bug.

It is recommended to use pyenv for python version control.

To build Python related stuff, you need Python header files installed (python3-dev on Ubuntu for example).

Prepare requirements

Details for Ubuntu
Install git, cmake and curl
sudo apt install build-essential checkinstall
sudo apt install git cmake curl

Note:

In case you run in error about xcb when running AYON, you'll need also additional libraries for Qt5:

sudo apt install qt5-default

or if you are on Ubuntu > 20.04, there is no qt5-default packages so you need to install its content individually:

sudo apt-get install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
Details for Centos
Install git, cmake and curl
sudo yum install qit cmake

Note:

In case you run in error about xcb when running AYON, you'll need also additional libraries for Qt5:

sudo yum install qt5-qtbase-devel
Use pyenv to install Python version for AYON build

You will need bzip2, readline, sqlite3 and other libraries.

For more details about Python build environments see:

https://github.com/pyenv/pyenv/wiki#suggested-build-environment

For Ubuntu:

sudo apt-get update; sudo apt-get install --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

For Centos:

yum install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel

install pyenv

curl https://pyenv.run | bash

# you can add those to ~/.bashrc
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

# reload shell
exec $SHELL

# install Python 3.9.x
pyenv install -v 3.9.6

# change path to repository
cd /path/to/OpenPype

# set local python version
pyenv local 3.9.6

Build

Clone repository

git clone --recurse-submodules git@github.com:ynput/ayon-launcher.git

Prepare environment

Create virtual environment in ./.venv and install python runtime dependencies like PySide, Pillow..

./tools/make.sh create-env
./tools/make.sh install-runtime-dependencies

Build AYON Desktop

Build AYON in ./build/.

./tools/make.sh build

Build should create ./build/AYON {version}.app file.

Create installer

Create installer that can be distributed to server and workstations.

./tools/make.sh make-installer

Output installer is in ./build/installer/ directory. You should find .dmg and .json file. JSON file contains metadata required for server.