[Gambas-user] gambas2-runtime

Ron Onstenk ronstk at ...239...
Mon Sep 4 07:14:08 CEST 2006


On Monday 04 September 2006 06:25, R. Stormo wrote:
> 
> I'm trying again. 
> How can I make gambas2-runtime files. This so the person that shall run
> gambas projects don't have to compile and install the hole thing.
> Running Ubuntu.
> 
> 
> Regards Rohnny
>     http://forum.stormweb.no

Very good question.

First is the target ubuntu box the same as the box you develop?

Here a proposal for a quick hack to do it.

I do the install with ./configure --prefix=/opt/gb just to get all
the gambas stuff is one directory with sub directories. easy to browse.  :)

To be able to run something you need a few symlinks in /usr/bin to
the /opt/gb/bin/gambas2.gambas and etc. They are made by the installer.

For running "compiled' applications you need the runtime files only.
regarding the external components you use you need i.e. gb.qt.*

The most nice way is if you develop on the same environment as the client.
In that way you can copy the gambas files from the developer box.

The hard point is if you use MySQL you need to install it on all
the clients before you can use it :)

sample client map:
/opt
  /gb
    /bin
      gbx2
    /lib
      /gambas2   (the libs you use in the app)
        gb.qt.so  -> gb.qt.so.0.0.0 (symlink copy of create)
        gb.qt.so.0 -> gb.qt.so.0.0.0 (symlink copy of create)
        gb.qt.so.0.0.0
			for each lib you need
           {
            gb.{lib}.so  -> gb.{lib}.so.0.0.0 (symlink copy of create)
            gb.{lib}.so.0 -> gb.{lib}.so.0.0.0 (symlink copy of create)
            gb.{lib}.so.0.0.0
           }
    /share
      (I expect nothing)

/usr
  /bin
    gbr2 -> /opt/gb/bin/gbx2 (symlink copy of create)
    gbx2 -> /opt/gb/bin/gbx2 (symlink copy of create)

/usr
  /lib
    /*.so (libraries used)
    /mysql/* (i.e. is mysql is used )

For the '/opt/gb/lib/gambas2' directory you should not need the *.la 
and *.component files but if you use i.e. 'gb.db.form.gambas' then 
these must also copied. Be carefull they can use other *.so files

The last one '/usr/lib' is for libraries indirect used by the gambas2/gb.*
components. You can try with simple copy of them but best will be the
normal client part install via the packetmanager 'xyz'.

Anyway it will not be the easy win method if developer and client
box do not match 100% for the basic part. 


It would be nice if the IDE could produce a dependancy file for
each compiled project, uhmmm it is already the .project file.

This give a basic idea what to do.

Hoping not be slapped by Benoit :),

Ron

---
My 2 cents installer.






More information about the User mailing list