User Tools

Site Tools


doc:appunti:linux:video:olive_editor_compile_debian_bookworm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
doc:appunti:linux:video:olive_editor_compile_debian_bookworm [2023/11/06 15:52] – created niccolodoc:appunti:linux:video:olive_editor_compile_debian_bookworm [2023/11/06 17:54] (current) – [Copying the binary file to another PC] niccolo
Line 3: Line 3:
 You can download Olive Video Editor form the [[https://www.olivevideoeditor.org/download|download page]], the Linux version is distribute as an AppImage package, which should run on many GNU/Linux distributions without requiring to install dependencies, etc. This is partially true: I managed to start the program on my Debian 12 Bookworm computer, but **the program freezes too frequently**! I have the autosave function enabled, so I loose only one minute of work in case of crash/freeze, but restarting the work **three or four times per hour** is rather frustrating. You can download Olive Video Editor form the [[https://www.olivevideoeditor.org/download|download page]], the Linux version is distribute as an AppImage package, which should run on many GNU/Linux distributions without requiring to install dependencies, etc. This is partially true: I managed to start the program on my Debian 12 Bookworm computer, but **the program freezes too frequently**! I have the autosave function enabled, so I loose only one minute of work in case of crash/freeze, but restarting the work **three or four times per hour** is rather frustrating.
  
-It turned out that **compiling the progrm from the sources** (the same GitHub commit) solved the problem.+It turned out that **compiling the progrm from the sources** (the same GitHub commit) solved the problem. So this is how I compiled **Olive Video Editor version 0.2**, GitHub commit **[[https://github.com/olive-editor/olive/commit/55eedbfce909dfd7df97611a2eea1d1958385f9c|55eedbf]]**. 
 + 
 +===== Preparing the Debian 12 Bookworm ===== 
 + 
 +I performed a clean **Debian 12 Bookworm** installation, deciding to not install any desktop environment. From the tasksel menu I checked only the **SSH server** and the **standard system utilities**. Actually I used a virtual machine with **3 Gb of RAM** and **16 Gb of disk space**. 
 + 
 +There are detailed instructions on how to **[[https://www.olivevideoeditor.org/compile#ubuntu|compile Olive on Ubuntu 22.04]]**; for Debian 12 just some minor changes are required. First of all install the build tools and the libraries headers: 
 + 
 +<code bash> 
 +#!/bin/sh -e 
 + 
 +echo "Installing build tools..." 
 +apt install \ 
 +    build-essential \ 
 +    git \ 
 +    cmake 
 + 
 +echo "Installing Qt libraries..." 
 +apt install \ 
 +    qtbase5-dev \ 
 +    qttools5-dev \ 
 +    qttools5-dev-tools \ 
 +    qtbase5-private-dev \ 
 +    libqt5x11extras5-dev 
 + 
 +echo "Installing a/v libraries..." 
 +apt install \ 
 +    libavformat-dev \ 
 +    libavcodec-dev \ 
 +    libavfilter-dev \ 
 +    libavutil-dev \ 
 +    libswscale-dev \ 
 +    libswresample-dev \ 
 +    libopenimageio-dev \ 
 +    libopenexr-dev \ 
 +    portaudio19-dev \ 
 +    libopencolorio-dev 
 +</code> 
 + 
 +===== Download the source code ===== 
 + 
 +As the root user I created a directory to download the source code; I gave the permissions to execute the build process as a regular (non root) user: 
 + 
 +<code> 
 +mkdir -p /usr/local/src/olive-editor 
 +chown niccolo:niccolo /usr/local/src/olive-editor 
 +</code> 
 + 
 +As a regular user you can download the source code from the GitHub repository. I decided to download the exact commit of the last available nightly build: 
 + 
 +<code> 
 +cd /usr/local/src/olive-editor 
 +git clone --recursive https://github.com/olive-editor/olive 
 +cd olive/ 
 +git checkout 55eedbfce909dfd7df97611a2eea1d1958385f9c 
 +</code> 
 + 
 +The source configuration and compile is executed using the **cmake** procedures: 
 + 
 +<code> 
 +cd /usr/local/src/olive-editor/olive 
 +mkdir build 
 +cd build 
 +cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo 
 +cmake --build . 
 +</code> 
 + 
 +===== Configuration warnings ===== 
 + 
 +During the cmake configuration I got the following warning that I decided to ignore: 
 + 
 +<code> 
 +-- The following OPTIONAL packages have not been found: 
 + 
 + * OpenTimelineIO 
 + * GoogleCrashpad 
 +</code> 
 + 
 +The **OpenTimelineIO** is a Python package that you can find here: **[[https://github.com/AcademySoftwareFoundation/OpenTimelineIO|OpenTimelineIO]]**. You can install it using Pip, but beware that Debian 12 embraced the [[https://peps.python.org/pep-0668/|PEP 668]], so installing a Python module system-wide or in user space is a bit complicate. 
 + 
 +The **crashpad** is a C++ program available here: **[[https://chromium.googlesource.com/crashpad/crashpad/|crashpad]]**. 
 + 
 +===== Copying the binary file to another PC ===== 
 + 
 +At the end of the compile process you will find the binary file **olive-editor** into the directory **/usr/local/src/olive-editor/olive/app/**. You can just copy that file into another workstation where you have your preferred desktop environment. 
 + 
 +I copied the file as **/usr/local/bin/olive-editor**. 
 + 
 +You may have to install the dependencies manually: 
 + 
 +<code bash> 
 +apt install \ 
 +    libopencolorio2.1 \ 
 +    libopenimageio2.4 \ 
 +    libavfilter8 
 +</code> 
 + 
 +Check if all the dependecies are satisfied by executing: 
 + 
 +<code bash> 
 +ldd /usr/local/bin/olive-editor 
 +</code> 
 + 
 +Almost certainly more dependencies exists, check the official [[https://packages.debian.org/bookworm/olive-editor|Debian package page for olive-editor]]. 
  
-How to compile Olive Video Editor version 0.2  
doc/appunti/linux/video/olive_editor_compile_debian_bookworm.1699285959.txt.gz · Last modified: 2023/11/06 15:52 by niccolo