4 ms·
> How do I get my application to my users? For historical reasons, there hasn't been a good answer to this question for a long, long time What is wrong with a
by dTal 4y ago
> How do I get my application to my users? For historical reasons, there hasn't been a good answer to this question for a long, long time
What is wrong with a binary in a tarball, like Firefox and Blender and VSCode and everyone else uses? This always seemed like a non-problem to me.
- duped 4y agoLinker errors
- edflsafoiewq 4y agoStatic linking.
- duped 4y agoYou can't statically link glibc and you shouldn't statically link openssl or libcrypto, and Linux distributions make it extremely difficult to do reliably without compiling everything from source.
- edflsafoiewq 4y agoYou don't have to statically link everything. You should choose based on (a) if the lib has to be dynamic (eg. portability layers, crypto) (b) if the lib is widespread and has stable ABI.
- duped 4y agoand now your tarball will break on an indeterminate number of linux user machines without (often extensive) manual intervention to fix .so versioning issues. That's why things like flatpak exist.
- dTal 4y agoYou just bundle all libraries except glibc in the tarball. You build against the oldest glibc you're willing to call "supported". Firefox and Blender (among many others) have been doing this for as long as I can remember, and as long as I can remember their tarballs have never failed to work for me, on any distro. The problem seems to me to be that there's some kind of cultural imperative to attempt to dynamically link against whatever the system version of a library is, which is clearly insanity.