[Lazarus] Strange problem compiling IDE

Werner Pamler werner.pamler at freenet.de
Mon Mar 27 11:10:54 CEST 2017

Am 27.03.2017 um 10:29 schrieb C Western via Lazarus:
> On 26/03/17 23:13, Martin Frb via Lazarus wrote:
>> On 26/03/2017 22:11, C Western via Lazarus wrote:
>>> I am having a strange problem when compiling the IDE (current svn for
>>> both IDE and FPC). The compilation stops with
>>> Warning: Recompiling Expr, checksum changed for spe {impl}
>> "changed for spe"
>> either spe got recompiled, or you have 2 different spe.ppu
>> This happens for example when you
>> - have 2 spe.pas
>> - when you have search path for units that overlap (one spe.pas, but
>> visible in the search path of 2 packages)
>>> Expr.pas(78,12) Fatal: Can't find unit Expr used by FormGrid
> It turns out the problem was indeed a duplicate spe.pas; the culprit was
> components/tachart/numlib_fix/spe.pas
> simply deleting this file allows the IDE to compile. (I don't use the 
> tachart package). This is very difficult to figure out looking at the 
> error messages as described in my earlier message; looking back very 
> carefully on the -vt output I can see that there is a ppu loading 
> message on the tachart unit, but then the compiler keeps on looking 
> for spe.pas, with no indication at that point that the .ppu has been 
> rejected. The volume of output doesn't help.

I do a lot of recompilations of the IDE, I am a heavy user of TAChart, 
and I also have programs in which spe is used: I have never seen this 
issue. I can't remember why Alexander had to add this local copy of the 
numlib file, it certainly was a workaround for some issue. If I compare 
the spe of fpc3.02 with that local copy I don't see any essential 
differences. Therefore, I removed spe from the numlib_fixes folder of 
TAChart today.

But: in numlib_fixes there are other local copies of numlib files. They 
contain workaround fixes of issues with the original files. The fixes 
were made by Alexander, and I don't know which issues they address. At 
the moment I am working with numlib and have some patches in the bug 
tracker, but progress is slow since I don't which write permission 
there. But I can promise to try to remove the duplicated numlib files 
from TAChart in the long run.

But nevertheless, as mentioned in the beginning, I don't think that 
these files are the reason of the compilation issues that you mention. 
If that were true then anybody would have them - at least I don't.

More information about the Lazarus mailing list