[Lazarus] Adding packages at build time

Mattias Gaertner nc-gaertnma at netcologne.de
Mon Mar 5 11:42:30 CET 2012


On Mon, 05 Mar 2012 10:26:13 +0000
Mark Morgan Lloyd <markMLl.lazarus at telemetry.co.uk> wrote:

> Mattias Gaertner wrote:
> > On Sun, 4 Mar 2012 15:46:18 +0100
> > Bernd <prof7bit at googlemail.com> wrote:
> > 
> >> 2012/3/2 Mattias Gaertner <nc-gaertnma at netcologne.de>:
> >>
> >>> Why do you build two times?
> >>>
> >>> Why not simply svn up und rebuild the IDE via the IDE?
> >> I think I know what the problem is, I also wondered what would be the
> >> best solution for this and found nothing. The problem is the "build
> >> lazarus" from within Lazarus is using a somehow different way to buil
> >> it. From the console output it looks like "build lazarus" is *somehow*
> >> making use of the same makefiles too but it is producing a different
> >> result when running the same make target from the console.
> >>
> >> I think with "build two times" when doing a fresh install (or after
> >> fixing a broken unrunnable lazarus) he refers to:
> >>
> >> svn checkout ....  (or svn up -r <known_working> or otherwise fix
> >> broken things)
> >> make clean all       <--- this is the first time
> >>
> >> and then from the menu
> >> ./lazarus
> >> Tools  -> build lazarus  <-- this is the second time.
> 
> Sorry, I missed the earlier messages.
> 
> I've just compiled 0.9.30.4rc, and I no longer see a problem. However 
> until comparatively recently if you got Lazarus using  svn co  (etc.) 
> and then did a  make bigide  with default settings, the first project 
> you built also recompiled a whole lot of underlying libraries.

It recompiles if you added custom options in the Configure build
Lazarus dialog.
If you have the default settings the 0.9.31 IDE should only recompile
the IDE and the packages that are not in bigide, aka your additional
installed packages. If you found a different behavior please report the
bug.

 
> Many thanks to whoever fixed this. However once aware of the issue I 
> didn't consider it to be a particularly big deal, more serious is any 
> requirement to rebuild the IDE "from inside" since on tight systems this 
> obviously depletes the resources available for the compiler and- in 
> particular- linker.
> 
> >> There should be a make target that does exactly the same as the menu
> >> item "build lazarus", somehow the highly obscure make-voodoo that is
> >> performed in the "build lazarus" menu command should also be
> >> accessible from the console without having any working Lazarus binary.
> >> I once tried to reverse-engineer what exactly is going on and how and
> >> why calling the *same* make target would produce different outcomes
> >> when called from within the IDE and the command line but eventually I
> >> gave up.
> > 
> > If you want to build the IDE with packages use
> > lazbuild --build-ide=
> 
> What do you mean- like
> 
> lazbuild --build-ide=lazsvnpkg
> 
> as an alternative to  make all  ? In that case what's the basic package 
> list corresponding to bigide?

No.
There is currently no command line tool to change the list of install
packages. lazbuild takes the list from the same place as the IDE -
your config directory.
The parameter --build-ide takes additional compiler options. Like
debugger settings, verbosity, checks or defines. To compile an IDE with
your current list of installed packages use

lazbuild --build-ide=


Mattias
 




More information about the Lazarus mailing list