[Gambas-user] Issue 107 in gambas: gbx3 cant find library "ERROR: #27"

gambas at ...2524... gambas at ...2524...
Fri Sep 23 04:18:11 CEST 2011


Updates:
	Status: Invalid
	Labels: -Version Version-TRUNK

Comment #1 on issue 107 by benoit.m... at ...626...: gbx3 cant find  
library "ERROR: #27"
http://code.google.com/p/gambas/issues/detail?id=107

You must understand the difference between "components" and "libraries".

A gambas executable can be a component or a library. It will become a  
component only if it is merged with the Gambas sources. Otherwise you can  
only use it as a library, which what you done.

Here is the mail I wrote last year to explain how it works:

...
You have a new tab named "libraries" in the IDE project property dialog. In
that tab, you can define a list of gambas executables (*.gambas files) that
will be used as libraries.

When adding a library to a project, the IDE will extract from it all the
information needed for the automatic completion, as for the normal  
components.

These libraries will be loaded at program startup by the interpreter exactly
like any component written in Gambas.

When your project in run in debugging mode, i.e. from the IDE, the libraries
are located by using the absolute path specified in the project property
dialog.

But when running the project normally, the library is searched in the
following directory only:
- The same directory as the project.
- /usr/bin
- /bin

So, a Gambas executable that must act as a library for another program must  
be
installed in /bin, /usr/bin, or in the same directory as the program using  
it.
...

So you can see why the library is found inside the IDE, but not when  
running it directly from a terminal.

In other words, you must store your library in the same directory as your  
main executable. (Or in /bin or /usr/bin if it should be system-wide, a bit  
like components).

I didn't document that on the wiki. Mea culpa!





More information about the User mailing list