[Gambas-user] Fwd: Specifications for Gambas 3

Benoît Minisini gambas at ...1...
Mon Oct 28 20:27:45 CET 2013


Le 28/10/2013 20:09, Kende Krisztián a écrit :
>
>>>
>>> - The gb.chart component doesn't depend from gb.qt4.ext?
>>>
>>> gb.chart
>>> 0
>>> 0
>>> 3.1.90
>>>
>>> gb.image
>>> gb.qt4
>>> gb.form
>>> gb.qt4.ext
>>>
>>> If you're really not, it's will removed.
>> Dependencies of components written in Gambas are *not* located in their
>> '.project' or '.startup' file, but in the '.component' file.
>>
>> So 'gb.chart' depends on 'gb.form'.
>>
>
> I see, but I found this information in gb.chart.gambas file. If I remove
> the /usr/lib/gambas3/gb.qt4.ext* files, get this error message:
>
> kendek at ...3104...:~$ '/usr/lib/gambas3/gb.chart.gambas'
> gbr3: unable to load component: gb.qt4.ext
>
> So 'gb.chart' component depends on 'gb.qt4.ext', or not?

No. Let me explain:

A component written in Gambas is a gambas project that *can* be used 
like a component.

As a Gambas project (i.e. when you run it from the command line like you 
did), it has its own dependencies like any other Gambas project.

But as a component, it has other dependencies, explicitely defined in 
the "component properties dialog" in the IDE, that are written in the 
".component" project file.

These dependencies are the source of our problems:

1) Some of them are supported by the system packager: when a component 
needs explicitely another component.

2) Some of them are not: when a component needs "a gui toolkit", or 
"saving and loading images", which means one component among all being 
able to fulfill the requirement.

These kind of dependencies are not solved at package level, but only 
when creating the final project, that will only have explicit 
dependencies of single packages (i.e. the requirements of second type 
are solved by the IDE when checking the components in the project 
property dialog).

Moreover, not all of them are solved: 'gb.gui' and 'gb.desktop', as you 
noticed.

>
> And If component written in Gambas, depends on gambas3-runtime, or not?
>

You're right, all components should logically depend on gambas3-runtime. 
I forgot it, because normally you will install at least one Gambas 
program with the components, and that gambas program will depend on 
gambas3-runtime. I will update the wiki...

-- 
Benoît Minisini




More information about the User mailing list