> howto > package | ![]() |
| Documentation |
|
Gambas must be packaged the way described in this document, because the development environment relies on this structure when it creates a package of a gambas project.
If a distribution does not follow this requirement, then the packages generated by the development environment won't be able to be installed, and the user will be very unhappy.
Not all distributions make correct gambas binary packages at the moment. So, if you are a packager from these distributions, and if you read this text, please try to help Gambas work on your distribution.
Thanks in advance,
Benoît.
The specifications look like the ones for Gambas 1.0, except that lib.XXX.component files were renamed as XXX.component, and that now a component can have a part written in Gambas.
Gambas binary packages must have the following names and contents:
This package includes the Gambas interpreter needed to run Gambas applications.
It contains:
![]() | Note that gb.la, gb.so, gb.so.0 and gb.so.0.0.0 do not need to be distributed. They are temporary files used for generating gb.info and gb.list only. |
Its name must be gambas2-runtime.
![]() | The gbr2 symbolic link MUST be in the PATH, otherwise executables will not work. |
This package includes all tools needed to compile Gambas projects without having to install the complete development environment.
It contains:
This package includes the scripter program that allows to write script files in Gambas.
It contains:
It depends on the following Gambas packages:
![]() | The gbs2 symbolic link MUST be in the PATH, otherwise scripts will not work. |
Each gambas component must have its own package.
The package of a component contains:
Then name of a component package MUST BE gambas2-gb-XXX where gb-XXX is the name of the component, the point being replaced by a minus sign.
For example, the gb.qt component package name is gambas2-gb-qt. It must include:
You must follow the previous rules for these components, except that there is no shared library files inside.
![]() | Note that gb.debug, gb.eval and gb.draw do not have their own package, as they are distributed with the gambas2-runtime package. |
This package includes the complete Gambas Development Environment, with the database manager, and the help files.
It contains:
Its name must be gambas2-ide.
![]() |
The IDE relies on the following external tools:
For example, on Mandriva, they are:
|
This package includes all the example projects provided with Gambas.
![]() |
When packaging the examples, be careful that a Gambas project includes some hidden files and directories.
These are:
|
It depends on the following Gambas packages:
This package includes the help files generated from the wiki located at http://gambasdoc.org.
They are installed in the $(INSTALL)/share/gambas2/help directory, where $(INSTALL) must be replaced by the Gambas installation directory.
The contents of that directory is the following:
This package depends on the gambas2-ide package.
Its name must be gambas2-help.
Here is the list of all packages that must be made:
gambas2-devel gambas2-examples gambas2-gb-chart gambas2-gb-compress gambas2-gb-crypt gambas2-gb-db gambas2-gb-db-firebird gambas2-gb-db-form gambas2-gb-db-mysql gambas2-gb-db-odbc gambas2-gb-db-postgresql gambas2-gb-db-sqlite2 gambas2-gb-db-sqlite3 gambas2-gb-desktop gambas2-gb-form gambas2-gb-form-dialog gambas2-gb-form-mdi gambas2-gb-gtk gambas2-gb-gui gambas2-gb-image gambas2-gb-info gambas2-gb-net gambas2-gb-net-curl gambas2-gb-net-smtp gambas2-gb-opengl gambas2-gb-option gambas2-gb-pcre gambas2-gb-pdf gambas2-gb-qt gambas2-gb-qt-ext gambas2-gb-qt-kde gambas2-gb-qt-kde-html gambas2-gb-qt-opengl gambas2-gb-report gambas2-gb-sdl gambas2-gb-sdl-sound gambas2-gb-settings gambas2-gb-v4l gambas2-gb-vb gambas2-gb-web gambas2-gb-xml gambas2-gb-xml-rpc gambas2-gb-xml-xslt gambas2-help gambas2-ide gambas2-runtime gambas2-script
![]() | You can have a gambas2-debug package to store the debugging information of all previous packages. |
At the moment, the specification are almost the same than for Gambas 2:
The version number is incremented: "gambas2" must be replaced by "gambas3", "gbx2" by "gbx3", and so on.
Components can have control icons. These are PNG files that must be installed in a $(INSTALL)/share/gambas3/control/$(COMPONENT) directory, where $(COMPONENT) is the name of the component.
Beware that this is a development version, and so subject to changes at any moment!