Recent

Author Topic: We are planning the next release: Lazarus 2.0.10  (Read 15507 times)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6461
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #60 on: July 10, 2020, 09:43:58 pm »
As for the disabled buttons => if you could, please report a bug.

As for getting the packages to work. Yes, just go to menu: Tools > Build Lazarus IDE...
If any compile error should happen, then use menu: Tools > Configure Build Lazarus IDE... // And tick the checkbox "Clean all".

---
The "Save and Rebuild" button in the package install dialog does 2 things:
1) Save any changes you made => no changes made, already saved.
2) rebuild the IDE, in the same manner that the above steps do.

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3807
  • I like bugs.
Re: We are planning the next release: Lazarus 2.0.10
« Reply #61 on: July 11, 2020, 12:29:56 am »
You're saying I should/could have rebuild IDE instead, and that would bring back the components I had in former version?
Yes. Tools -> Configure "Build Lazarus". See Martin's answer.
Mostly Lazarus trunk on Manjaro Linux.

Birger52

  • Full Member
  • ***
  • Posts: 223
Re: We are planning the next release: Lazarus 2.0.10
« Reply #62 on: July 11, 2020, 12:53:46 am »
Okay - thx both of you.
Makes more sense now  8-)

"Installed" and "Compiled into" is not really logical - and it's not obvious that there is a difference or what the difference is.
When creating a new component or making changes to an existing one, the package window has a "Compile" button. It compiles the package.
Under "Use", there is an "Install" option. It will actually compile the the package into the IDE (as I see or understand it), as will as install the package.
Lazarus 2.0.10 FPC 3.2.0
Win7 64bit
Playing and learning - strictly for my own pleasure.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6461
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #63 on: July 11, 2020, 01:02:50 am »
"Installed" and "Compiled into" is not really logical - and it's not obvious that there is a difference or what the difference is.

True, as a user you should not need to know.

Currently packages can not be loaded at runtime (i.e. as libraries, or similar). Instead the entire IDE is recompiled, and the package is included.

At least for run time packages. That is packages that affect the IDE, or are needed in the Form-Designer. (A package that only runs in your app, and has no components for the designer, is not needed in the IDE)

Anyway normally the IDE will just do the work, if you install the package.

Only in case of an upgrade of the IDE this is not currently the case. Very unfortunate...

Milsa

  • Full Member
  • ***
  • Posts: 213
Re: We are planning the next release: Lazarus 2.0.10
« Reply #64 on: July 11, 2020, 10:25:31 am »
Will it without rebuild Lazarus in the future?
I work with Lazarus 2.0.10, FPC 3.2.0, SVN 63526
This information is actual to: 1st Aug 2020

PascalDragon

  • Hero Member
  • *****
  • Posts: 1958
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #65 on: July 11, 2020, 10:55:11 am »
Will it without rebuild Lazarus in the future?

This depends on support for dynamic packages in FPC. My hope is that I get everything required working for 3.4, so from then on Lazarus can use that as well, though it will probably have to continue to support static linking as well due to not all systems supporting dynamic packages from the start.

PascalDragon

  • Hero Member
  • *****
  • Posts: 1958
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #66 on: July 11, 2020, 11:02:28 am »
Yesterday I've noticed a small pecularity after installing Lazarus 2.0.10 32-bit and the 64-bit addon (Windows): I have in PATH the 3.0.4 compiler of 2.0.8 which is the 32-bit compiler together with the 64-bit addon as well. Now for the pecularity: the fpc binary first looks for a cross compiler (ppcrossXXX), then for a native compiler (ppcXXX) when compiling for a different platform, so it first looked for ppcrossx64, found that in PATH and executed that which turned out to be the 3.0.4 one (thus leading to compile errors in my project for Win64 due to me using code only available in 3.2.0). It turned out that the 64-bit compiler in Lazarus' 64-bit addon is now called ppcx64. After renaming it to ppcrossx64 the compiler driver picked up the correct binary.

Now I wonder: is the ppcx64 provided with the 64-bit addon a 64-bit binary (I didn't check, it's at work, at home I use a 64-bit Lazarus)? Cause in that case it would be really useless on a 32-bit Windows system...

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6461
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #67 on: July 11, 2020, 01:41:32 pm »
If you open the "task manager" (ctrl shift esc) and start the ppcx64.exe you can check. 32bit processes have a "(32bit)" at the end of the name (the "process tab, not the "details" tab).
It seems to be 32bit.

The wince arm cross compiler also is called ppcarm.exe

I have no idea what changed the naming.
The build scripts have not changed, they still pass the same arguments to make.
However, still the same old build scripts, only calling make in compiler and in rtl and packages. (or something like that)

PascalDragon

  • Hero Member
  • *****
  • Posts: 1958
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #68 on: July 11, 2020, 02:50:31 pm »
If you open the "task manager" (ctrl shift esc) and start the ppcx64.exe you can check. 32bit processes have a "(32bit)" at the end of the name (the "process tab, not the "details" tab).
It seems to be 32bit.

Yes, I'm aware how to check for it. It's just that I'm at work only on Monday again and I don't want to install the 32-bit Lazarus on my computer at home just to check this. ;)

I have no idea what changed the naming.
The build scripts have not changed, they still pass the same arguments to make.
However, still the same old build scripts, only calling make in compiler and in rtl and packages. (or something like that)

Where is the build script located? Just so that I can check what the outcome is...

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6461
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #69 on: July 11, 2020, 03:16:57 pm »
Where is the build script located? Just so that I can check what the outcome is...

In \lazarus\tools\install\win
for cross compiling  build-cross.bat

I am calling it with (hope I copied it correct, its a .bat, and full of "IF" for other versions)

Code: Text  [Select][+][-]
  1. SET INSTPREFIX=
  2. SET LAZBUILD_TARGET_DIR=B:\Installers\
  3.  
  4. REM  FPC svn dir  /  starting compiler
  5. SET FPC_SVN_BUILD_DIR=B:\Installers\build_sources\fpc_build_tag
  6. SET FPC_SVN_BUILD_EXE=B:\FPC\SVN\ppc386_3_0_4.exe
  7.  
  8. REM  SVN fpc build
  9. SET BINUTILSDIR_SOURCE=B:\Installers\build_sources\fpc_build_tag\install
  10. SET BINUTILSSUBDIR_SOURCE=crossbinw64
  11.  
  12. SET WANTCPU=x86_64
  13. SET WANTOS=win64
  14.  
  15. SET LAZBIN_SVN_BUILD_DIR=B:\Installers\build_sources\svn_laz_bin
  16.  
  17. REM  copy of  x86_64-win64-**.exe  // updated from svn
  18. SET BINUTILSDIR=B:\Installers\build_sources\304cross
  19. if not ["%BINUTILSSUBDIR_SOURCE%"] == [""]  DEL /Q /F /S  %BINUTILSDIR%\*.*
  20. if not ["%BINUTILSSUBDIR_SOURCE%"] == [""]  copy %BINUTILSDIR_SOURCE%\%BINUTILSSUBDIR_SOURCE%\*.* %BINUTILSDIR%\%WANTCPU%-%WANTOS%\
  21.  
  22. REM lazarus binaries svn
  23. SET LAZ_SVN_BUILD_DIR=B:\Installers\build_sources\svn_laz
  24. SET LCL_PLATFORM=win32
  25.  
  26. SET ISCC="C:\Program Files (x86)\Inno Setup 5.6.0U\iscc.exe"
  27. SET PATH="C:\Program Files\TortoiseSVN\bin\";%PATH%
  28. SET SVN="C:\Program Files\TortoiseSVN\bin\svn.exe"
  29.  
  30. if NOT [%LAZTEMPBUILDDIR%]==[] SET LAZTEMPBUILDDIR=b:\tmp_lazbuild
  31. mkdir %LAZTEMPBUILDDIR%
  32.  
  33. b:
  34. cd %LAZ_SVN_BUILD_DIR%\tools\install\win
  35.  
  36. call build-cross.bat   %FPC_SVN_BUILD_DIR%     %LAZ_SVN_BUILD_DIR%   %FPC_SVN_BUILD_EXE%  %WANTCPU% %WANTOS% %LAZBIN_SVN_BUILD_DIR% %WANTSKIP% %INSTPREFIX%
  37.  
  38. move %LAZ_SVN_BUILD_DIR%\tools\install\win\installer.log %LAZBUILD_TARGET_DIR%
  39. move %LAZ_SVN_BUILD_DIR%\tools\install\win\svninfo.txt %LAZBUILD_TARGET_DIR%
  40. move %LAZ_SVN_BUILD_DIR%\tools\install\win\Output\*.* %LAZBUILD_TARGET_DIR%
  41.  
  42. pause
  43.  

PascalDragon

  • Hero Member
  • *****
  • Posts: 1958
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #70 on: July 11, 2020, 05:41:34 pm »
Thanks! Let's see whether I can figure that out...

PascalDragon

  • Hero Member
  • *****
  • Posts: 1958
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #71 on: July 14, 2020, 03:15:50 pm »
As a little heads up: the binaries in the 32-bit Windows distribution are indeed 32-bit, so at least no problem there. ;)

 

TinyPortal © 2005-2018