[Gambas-user] Executable files

Benoît Minisini gambas at ...1...
Tue Jun 2 12:53:46 CEST 2009


> Doriano Blengino escribió:
> > richard terry ha scritto:
> >> On Tue, 2 Jun 2009 12:39:13 pm Keith Clark wrote:
> >>> I have made my first Executable file via the Project menu item and it
> >>> created a file.gambas file.
> >>>
> >>> I sent that to another computer, but it won't execute.  Do I need to
> >>> install gambas on every machine that I want to run gambas created
> >>> executables on?
> >>>
> >>> Thanks,
> >>>
> >>> Keith
> >>
> >> yes
> >
> > Well, yes and no. To run a gambas executable you only need the gambas
> > runtime - basically /usr/bin/gbr2 , and support files in /usr/lib and
> > /usr/share. On a Debian system the package is named "gambas2-runtime";
> > you should also install every component used by the application: they
> > are named "gambas2-gb-xxx"; for example, "gambas2-gb-gtk" and so on.
> >
> > If you want to install the minimum required to run your application, do
> > so. If you also install gambas2-dev, you also have the compiler; if you
> > install gambas2-doc, you add the documentation (32 Mb); if you install
> > gambas2-ide you also have the IDE. If you install the "gambas2" package,
> > you get everything. So a shortcut culd be to select "gambas2" for
> > install, and then unselect the docs, the compiler and the IDE.
> >
> > This in a Debian system - don't know about other OSes, or when installed
> > from sources.
> >
> > Regards,
>
> Hi all
>
> In addition to the comments above, I will explain the way I do.
>
> You can create distributable packages for several distributions from
> Project -> Create -> Package Installer  (Not, sure I'm using Spanish
> locales)
>
>  From the 'wizard', fill in the fields you need, next step write your
> changelog, choose which packages you want to make for a distro, select
> the sections you want your menus will placed on, and magically you will
> get the installable packages into the selected directory ready for
> distribute them.
>
> These packages will resolve dependencies automatically, the only
> downside is if you are using or compiling your project with the last
> stable version of Gambas(and its components) and your end users have an
> old version within their repositories. It may (or will do, for sure)
> that your application doesn't work or fails at one point.

All Gambas 2.x versions (except 2.0 and 2.1 on 64 bits OS) are binary 
compatible. So if you make a package from the 2.13.1 IDE, it will install and 
run on a system with Gambas 2.8 (for example). 

Your program won't work only if it depends on a bug fix.

>
> Personally, I'm creating the Debian packages myself, including all
> needed -and recent- Gambas' components inside the .deb package. This
> way, users don't need to install nothing about Gambas manually.
> You can find lots of info about creating deb packages on the Internet.
>
> http://www.linuxdevices.com/articles/AT8047723203.html
>
> Of course, my method is not perfect. I have been created the same
> directory structure like Gambas does, but only copied the needed
> components/libraries. What about if the user want to install another
> Gambas application which resolves old dependencies from repos?
> Likely, my latest versions of Gambas components/libraries will be
> overwritten, and if so, my application will stop running or will
> malfunction. 

You must put the libraries inside their own directories, and run your project 
by setting the the LD_LIBRARY_PATH environment variable before (use a shell 
script for that), so that Linux takes your libraries and not the ones 
eventually installed by a system Gambas package.

Regards,

-- 
Benoît




More information about the User mailing list