GTK+ and Application Delivery



Hello,

I have been developing an application of late responsible for the display
of seismograms and some analysis thereof.  Once released it will be used
by seismologists on all linux variants, solaris, and macOS (windows
version in the future also possible).

First let me say that I have found gtk+ as a development solution nothing
less than an absolute pleasure to work with.  I find GTK+ to be a library
that is complete, well-documented, functions as advertised, works, looks
good, is predictable, robust, etc.  (The application I'm writing is a
re-write of an application I wrote 15 years ago, then based on xview, the
difference between then and now in terms of gui development is nothing
less than phenomenal.)  So a personal thanks to all the people involved
with GTK+ and its continued development.

That said, I have a question/issue related not to GTK+ as a development
tool, but, rather, GTK+ as a set of libraries.  The application I will be
delivering, as I said, resides in the domain of end-users as
seismologists.  This group is, it goes without saying, not computer geeks
but earthquake geeks.  As such, they have no patience for install
dependencies around any application (why should they?).

Delivery of my application with the dependency that the proper version of
gtk+ be installed on each machine (and all dependencies and
sub-dependencies) running my app is tantamount to guaranteeing my
application will simply not be used; and I can't imagine that this is
ultimately the point of providing such a useful library of gui tools as
GTK+.

With this in mind, I have decided that for delivery, the solution *must*
be that the install is easy and foolproof for each platform it's being
provided on (a by-hand install of gtk+, configure/compilation/install, is
out of the question; if you're not a computer geek, this is simply not
possible.  While I appreciate that GTK+ is complicated, and for us
developers, this pain can be accommodated for (what we're being paid for,
no?), I find, for this to be a requirement for an end-user, this makes it
very difficult indeed for applications to be distributed easily.)

I originally queried as to the possibility of a static link, but was
informed that this is very much not recommended.  I have since taken the
fallback position of providing the necessary GTK+ libraries as part of my
application's delivery, and an install script of such (which I have
demonstrated does work).

But my question is this: why does GTK+ not encourage itself to be more
accessible from an application deployment point of view?  Why is there, at
least, not an explicit document relating to delivery and deployment
issues?  Why is there not a distinction made between development with tht
GTK+ libraries and deployment of applications made thereof?  Why are there
no binaries of the libraries available that can make this distribution
easier?  (For example, I need to deliver this on macOS and don't have a
mac machine myself, where do I obtain the binaries to make my app
distributable?)

And don't get me wrong, my intent is not to simply complain, my intent is
to encourage the use of GTK+.  Making distribution of applications easier
than having to install gtk+ from source would, imho, make gtk+ infinitely
more interesting as a solution than having to require gtk+ be installed
from source on each machine wanting to simply run an application developed
with it.

Or have I somehow completely gotten the wrong end of the stick?

Again, my kudos to the gtk+ team, the product is, as far as i'm concerned,
brilliant.

with warm regards,

richard boaz




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]