Compiling VLC from Source on Fedora 29

I’m working on fixing an issue with VLC (as of now v3.0.8 and v4.0.0-dev) where some HTTP live-streams playback has a consistent delay of 1minute+. You can easily reproduce this in any platform by opening any YouTube live-stream with a wall-clock time (e.g: vlc <youtuble-live-stream-url-of-a-news-channel>).

The first step to work on VLC is to compile it from source on my dev-environment and I’m writing this post because following all the relevant VLC official docs (I read almost all the dev docs) wasn’t enough to compile it on the Qubes OS Fedora 29 domain/VM I set up for VLC. This is of course to be expected because no project can provide up-to-date instructions for all imaginable dev-environments. However, there are some tools that make it much easier to compile non-trivial projects in many platforms (especially Linux) but they are beyond the scope of this post and deserve their own post if not a series of posts:sweat_smile:.

Before reading on, keep in mind that this is more of a journal entry for me and it’s possible that the official VLC docs are sufficient. In particular, I suspect that only passing the disable--* flags to ./configure may just work. But when I encountered the compilation errors first, I started to install as many optional VLC deps (using make | grep -i warning if you’re wondering).

So let’s start by installing the required packages:

Now we need to get the latest code:

We can now start getting into the main compilation steps:yum_face::

Now we have a working VLC executable and can run it just using ./vlc in the same directory:smiley:. Note that you can use sudo make install but I personally prefer to keep the original VLC as a baseline and it’s easier to just ./vlc when you’re making changes to the code. More like make && ./vlc whenever you want to test your latest changes.

Finally you can go to the VLC Developers Corner (the main reference for this post) for more details on compiling VLC on many platforms and much more. And if for any reason you didn’t manage to compile VLC, just know that compiling from source can be tricky business. VLC still is one of the easier ones though and why this is the case is its own post too:sweat_smile:.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store