[Gambas-user] New Gambas User - Stupid Question

Paul Horechuk horechuk at ...981...
Tue Dec 5 18:28:22 CET 2006


On Tuesday 05 December 2006 10:24, Bob Hodges wrote:
> Excellent answer, and exactly what I was looking for.  Thank you for the
> direct honesty, it helped me understand that Gambas - as cool as it is -
> is most definitely not for me.  At least not at this time.
>
> Dang, the one true "VB for Linux" I find - that works GREAT - and it
> turns out to be an app distribution nightmare.  This is a major
> disappointment considering how cool this product is and how well it
> works.  But there's no such thing as a "killer app" that can't be
> distributed.  Sadly, Gambas brings to light a very difficult achilles
> heel of Linux in general - out of control library dependencies.  It's
> like trying to herd cats.  It's utterly futile.
>
> Back to trusty ol' Windows, VB and InstallShield, I guess.  At least
> until the Mono project gets serious about VB, because right now it's
> still pretty much all about C#.
>
> Again, thanks for the info.  I'll check back on Gambas in another year or
> so and see what's happening.

I think you need to rethink the concept here. Gambas apps are applications 
for Gambas, not Linux. Its really the same concept as saying a WinXP app is 
for WinXp, it won't work with Win95 or Win98. There are version specific 
applications for the various version of Windows. Some require tweaks to the 
target Windows and InstallShield handles most of the changes, installing 
DirectX components, or such as required. But if the Windows version is too 
different, then it will fail as well.

In this case, your target customers would require a specific version of 
Gambas to be installed, to match the version for which you are developing a 
project. Your application is packaged, using the Make Source Archive 
function and can then be distributed, noting the required Gambas version. 
Note that the stable versions (eg 1.13) don't change as frequently as the 
devel versions (eg 1.9.46). The stable versions are often installable as 
packages from the distros, such as Ubuntu or FreeBSD. Using stable Gambas 
versions as your target, application distribution is a lot simpler.

Note again, that when you distribute an application, you are providing the 
source. This is, after all, an Open Source product. If your goal is to 
distribute proprietary packages for Linux, then you have to rethink your 
market audience.

Herding cats is certainly a good way of describing the linux dependancy 
hell. In most cases these are handled by the distros and you don't have to 
worry about these issues. If you develop an app that works under Gambas 
stable v1.13, then you state that as a requirement. If your target runs 
Ubuntu or CentOS, then they would install Gambas 1.13 from their 
repositories. Its the job of the distro and their support staff to handle 
the herding. All you do is provide the application archive, with 
instruction for installation. Typically, you would extract it into your 
customer's gambas projects folder (make one if you wish) and then run 
Gambas. You then make an executable from your code. Its a simple process.

Mass distribution is one thing. It does require you to document everything. 
Smaller distribution channels allows you to provide the support channel 
yourself. Your services are what becomes marketable.

Personally, I don't see any Linux app to be distributed like a Windows app. 
Windows applications are closed in their concetual base. The target 
(although the market is in the millions) is very narrow, with WinXP and 
Vista as the only viable platforms with MS support. Once your app starts 
requiring things like Adobe to create PDF files, you can also enter the 
realm of dependancy hell. Try to find v6 of Acrobat, if you've used that as 
your requirement. Version 8 is out, but it won't run on Win98. The only way 
your product can survive is to target the typical WinXP configuration and 
hope it is in the majority.

Linux and the BSD's are about providing Open Source solutions. Source is 
available and the concept is also about choice.
>
>
>
>
>
> -----Original Message-----
> From: gambas-user-bounces at lists.sourceforge.net
> [mailto:gambas-user-bounces at lists.sourceforge.net]On Behalf Of Eilert
> Sent: Tuesday, December 05, 2006 12:42 AM
> To: mailing list for gambas users
> Subject: Re: [Gambas-user] New Gambas User - Stupid Question
>
>
> There are no stupid questions, only stupid answers, Bob.
>
> I hope this isn't one of those... :-)
>
> Bob Hodges schrieb:
> > I'm used to using Visual Basic and InstallShield to distribute my apps.
> >
> > Now for my stupid Gambas question:
> >
> > How on earth do you distribute a Gambas app?  What needs to be
> > included?  How do you package it into an installer?  Is it a horrible
> > mess?  Is there such a thing as a stand-alone distributable app in
> > Linux, and is Gambas capable of it?
>
> In contrary to Windows, Linux has an ever growing number of
> distributions with different versions of libraries. Gambas projects
> depend on a number of libraries such as Qt. The point is that there
> isn't "one Qt" but a couple of different versions on the users'
> computers. And there are more libraries than Qt Gambas depends on, all
> of which might slightly differ from those you as the developer have on
> your PC.
>
> Distributing a Gambas app as a package would mean making a collection of
> all those libraries necessary for YOUR Gambas and for THIS app on YOUR
> computer and distributing them with the package, having a package
> managing system involved which checks these libraries and their version
> against those on the client's PC, installing them if necessary, make
> them known to the package manager on that PC and thus bringing the app
> to life. This includes the Gambas interpreter itself which might be
> there in different versions.
>
> Up to now, nobody really has dared to take up with this task. There is
> an option "Make distribution package..." in the Gambas menue, but I
> don't know what it actually does since I've never used it yet, and there
> might be progress in the 1.9... series on this which I do not use
> currently.
>
> So the easiest way to make it run on other computers is to install
> Gambas on that PC (download and ./configure, make, make install has at
> least the advantage of a Gambas that really fits to every bit on that
> machine) and then run the Gambas app there.
>
> Regards
>
> Rolf
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your opinions on IT & business topics through brief surveys - and earn
> cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your opinions on IT & business topics through brief surveys - and earn
> cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user

-- 
Paul Horechuk
      Think Free 
Use Open Source Software




More information about the User mailing list