[Gambas-user] Gambas self-extracting installer

Kende Krisztián nemh at ...2007...
Sat Oct 26 19:00:25 CEST 2013


Sat, 26 Oct 2013 17:57:09 +0200 -n
Benoît Minisini <gambas at ...1...> írta:

> Hi,
> 
> I have just started to make a Gambas self-extracting installer in
> Gambas.

Good, but this installation method is Ubuntu- and Debian-stranger.

> I will write it in two stages.
> 
> The first stage is a command-line program that will detect the
> current distribution, and automatically install a GUI component
> according to it, so that the second stage can be run.
> 
> The second stage will be the graphical installation program by
> itself. It will install all the needed binary packages, according to
> the current distribution and the Gambas project requirements.
> 
> The first problem I encounter is the gambas runtime.
> 
> Either I require it to be already install on the system, the
> installer may become less useful then.

To avoid this, use a shell script. Preferably Bash. Default shell in
Debian and Ubuntu is Dash, but it not fully compatible with Bash.

> Either I put the runtime inside the installer, running it by 
> manipulating the environmental variables. But then I should put one 
> runtime for each architecture (x86, x86_64, ARM), and I can generate 
> only one architecture from a specific system.
> 
> Note that in both cases, I suppose that all system libraries needed
> by the Gambas interpreter are already installed.
> 
> For the x86_64 architecture, these are:
> - linux-vdso.so.1
> - libm.so.6
> - libdl.so.2
> - libpthread.so.0
> - libffi.so.6
> - libc.so.6
> - /lib64/ld-linux-x86-64.so.2
> 
> Except maybe for libffi.so.6, everything should be already installed, 
> otherwise the system is not functional.
> 
> What do you think about that? Which path should I follow?
> 

If you do not want to use shell script, I prefer the second one.
Unfortunately, the Gambas is not part of the basic installation.

But otherwise, there is also problem of Gambas version. If installer
use version 3.5, but system use older packages, installer not work. Or
installed code not work. Or source compilation is not possible.




More information about the User mailing list