News for hackers. Stuff that matters.
Re:Game dev: Linux users were only 0.1% of sales but 20% of ... by hkt on Monday January 07, 2019 @10:50AM (#18846093)
I concluded ages ago that no substantial applications should be integrated into an operating system. Dynamic linking if you're building something portable is just an awful idea because of how much variety you'll inevitably have to support (or choose not to support).

Some people have written about AppImages, this also applies to FlatPak and similar techs too. Isolating anything more complicated than a command line tool is the way forward and the tech exists. Not using isolation this way is a recipe for pain, whether it be on the desktop or the server (or the phone).

It depends how the plugins are loaded - it'd be great if they could use sockets so that AppImages were viable. No idea myself, though.

Re:Game dev: Linux users were only 0.1% of sales but 20% of ... by FigBug on Monday January 07, 2019 @10:56AM (#18846165)
They are VST plugins and the are dynamic libraries. Call dlopen and call a specified function.
Re:Game dev: Linux users were only 0.1% of sales but 20% of ... by singron on Monday January 07, 2019 @11:25AM (#18846514)
Confusingly, you can statically link a dynamic library (i.e. the dynamic library includes all its dependencies statically instead of recursively depending on more dynamic libraries). You can even link it in such a way that the dynamic library gets its own version of each dependency regardless of what the main executable is linked to (otherwise the main executable's links could override yours).

I did this once with a ruby gem that had particular c++ dependencies that kept breaking when the build machine had different library versions than the production machines. If you aren't integrated directly with the development of a linux distro, it's best not to use their packages as runtime dependencies, since they really only consider their own use before changing things up.