Recent

Author Topic: Lazarus doesn't recompile changed units  (Read 8056 times)

wp

  • Hero Member
  • *****
  • Posts: 11853
Re: Lazarus doesn't recompile changed units
« Reply #45 on: October 01, 2020, 10:21:34 pm »
I sometimes have problems opening projects posted on the forum. They're just empty. I believe the problems have something to do with the version difference of the Lazarus we're using.
If you don't have Laz trunk (where you should check the "maximize compatibility" box in the project options, as Juha described already) you should should use my tool "fixlp" (https://sourceforge.net/p/lazarus-ccr/svn/HEAD/tree/applications/fixlp/) which converts the old to the new xml structure.

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4459
  • I like bugs.
Re: Lazarus doesn't recompile changed units
« Reply #46 on: October 01, 2020, 10:23:50 pm »
If I make uniData as a package. When developing SideNote.lpr and I need to edit something on uniData, I have to open the package, edit and compile it. And then reopen SideNote.lpr again to continue developing.
That makes no sense at all. You can have many package editors open while working with any project. You can open any unit file from those packages in editor and modify it together with project files.
Are we talking about Lazarus IDE? There is some fundamental misunderstanding now.

Quote
Also, I frequently use undo feature especially when test new idea. But if I open a new project or package, I will lost the undos.
Why would you open a new project?

Quote
The package concept is great but not very suitable for me. When I write a module I rarely just focus writing it. I usually will choose a real project, so at the same time I am developing the module I also writing a project that using it.
Yes, that is what all people do. (All programmers anyway ...)
« Last Edit: October 01, 2020, 10:25:45 pm by JuhaManninen »
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

Sieben

  • Sr. Member
  • ****
  • Posts: 310
Re: Lazarus doesn't recompile changed units
« Reply #47 on: October 01, 2020, 10:45:36 pm »
Yes, it works. I am changing the way I work now. Thank you.

 ;)
Lazarus 2.2.0, FPC 3.2.2, .deb install on Ubuntu Xenial 32 / Gtk2 / Unity7

Blaazen

  • Hero Member
  • *****
  • Posts: 3237
  • POKE 54296,15
    • Eye-Candy Controls
Re: Lazarus doesn't recompile changed units
« Reply #48 on: October 01, 2020, 10:47:30 pm »
So I added the zip again, the project was saved with the max. compatibility option. Steps are the same.
Lazarus 2.3.0 (rev main-2_3-2863...) FPC 3.3.1 x86_64-linux-qt Chakra, Qt 4.8.7/5.13.2, Plasma 5.17.3
Lazarus 1.8.2 r57369 FPC 3.0.4 i386-win32-win32/win64 Wine 3.21

Try Eye-Candy Controls: https://sourceforge.net/projects/eccontrols/files/

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9791
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus doesn't recompile changed units
« Reply #49 on: October 01, 2020, 11:02:10 pm »
If I make uniData as a package. When developing SideNote.lpr and I need to edit something on uniData, I have to open the package, edit and compile it. And then reopen SideNote.lpr again to continue developing.

If you open and edit the file (even if you do not open the package), then Lazarus will still recompile the file (and all packages that depend on it).

That is, unless the "files not recompiled issue" stretches into that area too.
If that issue does affect packages, then its harder to fix, as the ppu will be in the package dir....

If you want to change debug info, or other compile options for the package => you can do that from the project, via "additions and overrides". And that will work for build-modes too.


However: Using packages or not: The other problem at hand should in either case not happen....

Handoko

  • Hero Member
  • *****
  • Posts: 5129
  • My goal: build my own game engine using Lazarus
Re: Lazarus doesn't recompile changed units
« Reply #50 on: October 02, 2020, 04:18:23 am »
So I added the zip again, the project was saved with the max. compatibility option. Steps are the same.

I just downloaded and tested the recompiling2.zip. The project file can be corrected opened but I got a compile time error:

Handoko

  • Hero Member
  • *****
  • Posts: 5129
  • My goal: build my own game engine using Lazarus
Re: Lazarus doesn't recompile changed units
« Reply #51 on: October 02, 2020, 04:40:04 am »
I tested the fixlp, yes it works. I now can open Blaazen's recompiling.zip. Thank you for writing the tool.

Unfortunately both recompiling and recompiling2 can't be compiled on my Lazarus 2.0.10 Linux 64-bit computer. I got a compile time error. See my previous post https://forum.lazarus.freepascal.org/index.php/topic,51388.msg379395.html#msg379395

@JuhaManninen

The codes of my shared libraries are in its own folder. I didn't make multiple copies to other projects and I managed them well. So, the way I work without using packages works for me without any issue so far, so I didn't try or even think to change it. Using package seems good, I am going to use it from now on. The problem we're currently talking here may or maybe not caused by using shared library without using package.
« Last Edit: October 02, 2020, 05:02:10 am by Handoko »

Grahame Grieve

  • Sr. Member
  • ****
  • Posts: 365
Re: Lazarus doesn't recompile changed units
« Reply #52 on: October 02, 2020, 09:08:18 am »
Back to my original report... this is solid and reproducible for me, but only on one big project. Other projects behave as expected.. I still have no idea why

Handoko

  • Hero Member
  • *****
  • Posts: 5129
  • My goal: build my own game engine using Lazarus
Re: Lazarus doesn't recompile changed units
« Reply #53 on: October 02, 2020, 09:14:15 am »
Have to tried what Blaazen said? Can you re-procedure the issue using his steps?
https://forum.lazarus.freepascal.org/index.php/topic,51388.msg379363.html#msg379363

egsuh

  • Hero Member
  • *****
  • Posts: 1273
Re: Lazarus doesn't recompile changed units
« Reply #54 on: October 02, 2020, 02:28:38 pm »
I had similar experience. My cause was that I forgot changing names of some units, when I was upgrading continuously. For example, I used to use myunit3, and after a while, I created new myunit4 and modified some of the content within it.  Then I should change all the references in other units of the project, but I miss some of them. Or files of same name may coexist in different folders of search paths. In that case, the file you are changing may not reflected in the actual project.

Blaazen

  • Hero Member
  • *****
  • Posts: 3237
  • POKE 54296,15
    • Eye-Candy Controls
Re: Lazarus doesn't recompile changed units
« Reply #55 on: October 02, 2020, 06:05:12 pm »
Did someone reproduce the issue? It should be reported, IMO.

EDIT: Bugreport: https://bugs.freepascal.org/view.php?id=37856
« Last Edit: October 02, 2020, 08:42:32 pm by Blaazen »
Lazarus 2.3.0 (rev main-2_3-2863...) FPC 3.3.1 x86_64-linux-qt Chakra, Qt 4.8.7/5.13.2, Plasma 5.17.3
Lazarus 1.8.2 r57369 FPC 3.0.4 i386-win32-win32/win64 Wine 3.21

Try Eye-Candy Controls: https://sourceforge.net/projects/eccontrols/files/

 

TinyPortal © 2005-2018