Skip to content

Instantly share code, notes, and snippets.

@ZoomTen
Last active September 15, 2020 00:29
Show Gist options
  • Save ZoomTen/11875515eba2a7e7141f01dfacb1a5f0 to your computer and use it in GitHub Desktop.
Save ZoomTen/11875515eba2a7e7141f01dfacb1a5f0 to your computer and use it in GitHub Desktop.

Olive 0.2 Build Guide

Requirements

You need these dev libraries:

  • Qt >= 5.6,
  • OpenColorIO,
  • OpenImageIO >= 1.6,
  • OpenEXR,
  • OpenGL,
  • FFmpeg (>= 3.0) && (!= 4.3)

On Arch (and Arch-derived distros), just install the application package - it'll include the dev libraries along with it. On Debian (and Debian-derived such as Ubuntu), the packages you'll need will have a -dev suffix.

Olive uses CMake to build, so install that. NOT Qmake as in 0.1.x!

Build

git clone https://github.com/olive-editor/olive

You should have a new folder on your computer with the name "olive". Enter that directory (cd olive)

Make a new folder inside and call it build, built, or whatever, just to keep everything tidy. Enter that directory.

Have CMake set up Olive by running:

cmake -DCMAKE_BUILD_TYPE=Debug ..

The Debug build type is set for now, since backtraces (basically a long cryptic log showing the devs what happened from the inside) are very much needed at this stage.

After CMake has set up Olive, run make.

Testing

This assumes you have gdb installed.

Run Olive with gdb olive-editor. If something like (No debugging symbols found in olive-editor) appears, that means that Olive hasn't successfully compiled in Debug mode, and any backtraces it makes will be less useful.

The gdb prompt will appear instead of Olive. To run Olive itself, enter run, or just r. Use Olive for whatever you want and play around with it until something goes south or straight-up crashes.

When Olive crashes, the application itself will freeze, but the terminal will have a Type <RET> for more, at the bottom or tell you that it receives SIGSEGV or some other error.

When that happens, type in backtrace or bt. It's going to give you a really long output, but if you compiled it in Debug mode, it will show precisely what went wrong as well as the chain of events that led to it.

Also refer here, under "advanced debug log".

Workaround for latest FFmpeg

FFmpeg 4.3 introduced a bug that causes Olive to crash upon adding a clip to the timeline. To work around this, you'll have to install FFmpeg <= 4.2 or the latest git version.

If you are using the latest version from git, it's version number will trip CMake processing. To get around it, in Olive's CMakeLists.txt replace find_package(FFMPEG 3.0 REQUIRED) with find_package(FFMPEG REQUIRED), then compile again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment