[Lazarus] Where does Lazarus store/look for global settings/options?

Mattias Gaertner nc-gaertnma at netcologne.de
Wed Dec 3 10:32:44 CET 2008


On Wed, 03 Dec 2008 09:17:11 +0100
Luca Olivetti <luca at wetron.es> wrote:

> En/na Mattias Gärtner ha escrit:
> > Zitat von Luca Olivetti <luca at wetron.es>:
> > 
> >> En/na Mattias Gärtner ha escrit:
> >>
> >>> The installation packages install Lazarus always in the same
> >>> location.
> >> There was
> >>> no need yet to auto update paths.
> >>> Can you explain what the problem is when upgrading?
> >> To have the extra packages/components installed in the previous
> >> version available in the new one.
> > 
> > Just start the IDE, compile and restart it. This will install the
> > last package set.
> 
> I normally use lazbuild, but as a test I followed your advice:
> 
> 1) I copied my c:\lazarus-0.9.26 directory to to a new directory
> c:\laztest 2) "make clean bigide" in c:\laztest

There is a misunderstanding.

Upgrading: replace old version with a newer one. One config directory
is enough.

Multiple lazarus: one config per version is recommended.


> 3) start the new lazarus, change environment options to point to 
> c:\laztest (otherwise the ide "build lazarus" would build the old one)
> 4) Add a bogus property to TChart in the new directory (tchart is 
> shipped with lazarus but it isn't installed by default)
> 5) Tools->Configure Build Lazarus->Build Ide With Packages->Build
> 6) Put a TChart on a form to check in the object inspector if the new 
> bogus property is there
> 7) The new property isn't there, unsurprisingly since lazarus
> compiled the component from the old directory
> 
> QED

It proves, that multiple lazarus versions requires multiple config
directories and that it is not enough to copy a config directory and
change *only one* path. As I said, it would be nice if there is a tool
to help change some more paths.

 
> Here's a a diff between idemake.cfg from the old and the newly built 
> ide. As you can see lazarus adjusted the paths only for 
> synedit,ideintf,lcl,codetools and packager, but it used the same as 
> before for all other components.

Yes. These are the at the moment hard coded packages. It is planned to
change this. And to add some mechanism to load all used packages from
the other source directory.

You get the same problem with all package collections.
 
>[...]

Mattias




More information about the Lazarus mailing list