Mattias Gaertner wrote:
On Mon, 05 Mar 2012 10:26:13 +0000
Mark Morgan Lloyd <[email protected]> wrote:

Mattias Gaertner wrote:
On Sun, 4 Mar 2012 15:46:18 +0100
Bernd <[email protected]> wrote:

2012/3/2 Mattias Gaertner <[email protected]>:

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.

Until recently an IDE built with make bigide recompiled at least some packages when told to build the first project. This was irrespective of whether I was patching in e.g. lazsvnpkg.

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.

It's apparently been fixed, but I'll keep an eye on it.

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=

OK. So going back to my original query: if I want to add something like lazsvnpkg for the initial build I've got to patch it in myself.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to