I have a closed source Linux application that I want to distribute. This application uses wxWidgets / GTK, so there is a huge list of shared libraries (60+) that this application depends on.
What is the preferred way to publish the application and support the maximum number of distributions?
Should I create an application for each supported distribution and publish it separately? This has the disadvantage of a complex build (chroot and build on the distribution) and will only work on a supported distribution.
Should I add all shared libraries to the installer and use them with the env LD_LIBRARY_PATH variable (e.g. VMware)? This has the disadvantage of increasing the size of the installer.
Is this creating a fully static application? This is certainly not possible, as it will violate some licenses.
Is this a mixture of this or that option? How do most commercial vendors publish their own graphical (preferably based on GTK) application?
Linux. , . , , - libc , . Linux LSB.
, - .
, . , .
- , . lib/, LD_LIBARY_PATH . , , , . , , , .
LD_LIBARY_PATH
- . , , , , , . 2 : (Debian, Ubuntu, SuSE, redhat, , ), : , , , .
, , , .
, , , -, ZIP-, .
, , . , .
: , , blob . , , , , .
I mean: how much is the part of your code that sets up the user interface? How much will you lose when someone steals it?