[Gambas-user] "User components" replaced by "Libraries" in Gambas 3
Doriano Blengino
doriano.blengino at ...1909...
Mon Apr 26 08:19:03 CEST 2010
Ian Haywood ha scritto:
> svitoos wrote:
>
>> I think it is better to look for libraries in the directories listed in
>> GB3_LIBRARY_PATH, and if this variable is not defined
>> then "/usr/lib/gambas3:/usr/local/lib/gambas3":~/.local/lib/gambas3
>>
> I think this is a good idea, because gambas should behave like other
> POSIX-based interpreted languages (python, ruby, perl, etc.) unless
> there is a good reason not to.
>
I agree too.
> Benoit wrote:
>
>> As they are libraries, looking inside <gambas installation prefix>/lib/gambas3
>> may be a good solution, but Gambas executables are architecture-independant,
>> so maybe they should go into <gambas installation prefix>/share?
>>
>
> "lib" is where python and ruby libraries go, even though technically
> their bytecodes are architecture-independent too, this is probably
> because "lib" has all the other
> system libraries and its more confusing to make an exception.
>
Probably I am wrong, but I don't see all this importance about keeping
some files in .../share just because they are architecture independent.
I don't see any advantage in this convention; it would be more logical
if .../share contained files shareable by different applications on the
system (and, in fact, you find many of them: icons, fonts,
translations...). If so, then gambas libraries are not common to
different applications - they are common to gbx3, and .../lib would be
more logical.
>
>> I don't want to multiply the directories where libraries must be searched for
>>
>
> I think there is a good reason for the three directories suggested above.
> It is important to search both /usr/ and /usr/local/ to provide a
> clear separation between default libraries managed by the OS
> installation system (apt-get, rpm, or whatever)
> and third-party libraries installed by the system admin, plus it is
> useful to have a third directory under $HOME so libraries can be
> installed without being the superuser.
>
> Ian
>
Agreed again.
And now a little curiosity: would be those libraries *true* executable?
I mean - I code a project with some class, and the main class contains
code to test the other ones. Then I can use the project as a library,
and still use it as a standalone program to test the library at any
time. In addition, the project/library can be used to configure it... I
mean - I use, say, an SMTP library. In my final application, instead of
asking the user a lot of parameters about the network, I can simply
SHELL ".../libsmtp.gambas" to let the library ask and store all the
relevant parameters and preferences...
Regards,
Doriano
More information about the User
mailing list