[SOLVED] Shotcut snap package missing libsdl-2 error on Ubuntu 17.10

I installed the latest Shotcut snap package on Ubuntu 17.10. When I try to run Shotcut I get an error that the SDL library (libsdl-2 is missing. I also tried it on a machine with KDE Neon and got the same error.

Installing libsdl1.2debian did not resolve the error.

1 Like

Under 17.10 (I’m assuming the release version and not an earlier beta),using the Ubuntu Software app, install Synaptic Package Manager, search for libsdl (the right rev.s will show up in the results), and install as needed. Easy-peasy.

I had installed libsdl1.2debian but that wasn’t enough. I also needed to install libsdl2-2.0-0 which I had overlooked.

On a fresh Ubuntu 16.04 or 17.10 installation, you’ll need to do the following before installing the snap or portable version of Shotcut:

# sudo apt-get install libgstreamer-plugins-base0.10-0 libsdl1.2debian swh-plugins libsox2 libsdl2-2.0-0 libjack0

Shotcut will then start up. The above should also work on the latest Linux Mint.

1 Like

That works, too. With synaptic, though, the search engine will help with “well, it’s libsdl-something, but I forget what”. Search on “libsdl” and pick what fits your needs. Synaptic also does a check on dependencies, listing what has to be changed during an installation. I’ve had instances where I thought I’d try some package and I saw a list of what packages would have to be deleted during the change. More than once, I could have broken Gnome. Not Good.

Anyway, the code listed above is a good call.

The snap definition tries to include libsdl2 and swh-plugins, but it is possible that “stage-packages” no longer functions the same on recent versions of snapcraft as it did on older versions.

I’ve not installed snap packages until Shotcut. It could very well be that the “stage-packages” function may have changed. For the moment, I recommend having the above apt-get code on the download page; it’ll avoid a lot of frustration. :slight_smile:

From the description and resolution, you may be running the binary directly instead of the launcher script. I don’t have a working snap setup at the moment (snap does not like my binary nvidia drivers) to see what happens if you type “shotcut” at the command line. If you are using the snap’s icon, then it uses the launcher script. The snap is based on the portable zip and follows similar rules. I’ll have to take a closer look at the condition of the snap soon. It has been an afterthought to be honest because it has been painful to use and provide. I don’t have much time to give it. Nuisance is either the mother of invention… or removal.

I looked into this more, and I learned that the “classic” confinement mode I am using for snap does not let it use any of the packages installed in the snap. In classic mode, it is little more than repackaging the portable zip. Therefore, it does require installing the system packages. I am using classic confinement because the export jobs will not start in “strict” confinement, and I just don’t have the time or experience on how to debug something running in strict confinement like that. The difference in confinement - besides library dependency resolution - is that strict is an execution sandbox.

I also discovered that for some time - probably about a year - Shotcut Linux builds have included some unnecessary dependencies such as gstreamer. I have made a new v17.11.04 build to fix a MP3 crash bug that reduces these dependencies. You should not need SDL 1.2 or gstreamer. You should also not need libsox2 as my portable build includes it, but libsox has a dependency on libltdl, which is not included. I figured out some of these while working on a snap in strict confinement with latest build. There are some other dependencies not available in a clean install of Ubuntu 17.10, for example, that I will bundle in next month’s build. The reason some dependencies like SDL2 and Jack are not bundled is because the version in my build agent either pulls in a big sub-tree of dependencies that I do not want to include or because it does not play nice on some Linux OSes.

There will be a new snap soon for v17.11 with fewer dependencies, and I will test an updated apt-get to satisfy the new dependencies.

This was excellent help! I had trouble too until I used the command you posted! Thank you!

Just wanted to say thanks.

I’m running a fresh install of 16.04, latest version of Shotcut. Had this exact same problem, and your solution worked great! :slight_smile:

Thank you!