Recent

Author Topic: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable  (Read 1434 times)

Int3g3r

  • New Member
  • *
  • Posts: 41
fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« on: November 21, 2025, 11:12:38 am »
Hello

Which version of the Lazarus IDE should I use, 32-bit or 64-bit, to minimize problems?
Are all packages (such as Zeos, etc.) compatible with both 32-bit and 64-bit?

I mostly create small projects for 64x Windows, so it doesn't really matter to me whether they are compiled in 32-bit or 64-bit.
It just has to work.

Is the following still relevant with fpc3.x??
https://wiki.lazarus.freepascal.org/Windows_Programming_Tips
Quote
Please be aware that all Lazarus 1.x releases use FPC 2.6.x. FPC 2.6.x (and probably earlier versions as well) does not properly support Windows 64 bit.
Therefore, please use the 32 bit Lazarus IDE on Win64. If it is absolutely necessary to build 64 bit executables (eg explorer extensions),
please install the 64 bit cross compiler add-on for the 32 bit IDE.

Which installation of Lazarus do you use: Tunk or Stable?
What about the fixes?
Do they need to be installed separately after installation, or are they included in Tunk/Stable?

Regards Int3g3r

cdbc

  • Hero Member
  • *****
  • Posts: 2561
    • http://www.cdbc.dk
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #1 on: November 21, 2025, 11:43:19 am »
Hi
I haven't had a 32bit machine in over 8 years!!!
Everything is 64 bit.
Regards Benny
If it ain't broke, don't fix it ;)
PCLinuxOS(rolling release) 64bit -> KDE6/QT6 -> FPC Release -> Lazarus Release &  FPC Main -> Lazarus Main

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #2 on: November 21, 2025, 01:18:52 pm »
Always use stable, trunk/main is only for people who understand that "trunk" is not stable and changes by the day, literally almost everyday. Which means you also should compile it at least once a week. I do not think that is what you want.
OTOH trunk has many, many new features so if you think you need those, feel free to use trunk, but then don't forget to build it every few days or so.
"trunk" can easily disappoint you if you do not understand it is a development version with basically NO support. (well, a bit here and there, it is not that bad)

But I have seen many times that people want support for "trunk" and then it became clear it was a trunk version from three or more years ago.
That is not the spirit to use trunk. Trunk is rolling, but not a release...
« Last Edit: November 21, 2025, 01:58:58 pm by Thaddy »
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

440bx

  • Hero Member
  • *****
  • Posts: 6021
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #3 on: November 21, 2025, 04:36:31 pm »
Hello

Which version of the Lazarus IDE should I use, 32-bit or 64-bit, to minimize problems?
I recommend you use the 64 bit version for a number of reasons but, the most important one may be that the 64 bit version can debug _both_ 32 bit and 64 bit programs while the 32 bit version can only debug 32 bit programs.  That alone, IMO, is more than enough to select the 64 bit version.

I mostly create small projects for 64x Windows, so it doesn't really matter to me whether they are compiled in 32-bit or 64-bit.
It just has to work.
You should compile for both, 32 bit and 64 bit and ensure that both versions work.  The reason is because most programs should work regardless of bitness and testing both versions can reveal bugs due to unexpected bitness-dependencies in the code.

The passage you quoted from the wiki warning about the 64 bit IDE is "stale".  At this point, it is the 32 bit IDE that should be avoided.  One of the reasons, already mentioned, is debugging.

Which installation of Lazarus do you use: Tunk or Stable?
That's probably mostly driven by personal preference.  Personally, I stick to the stable release.  Anything else is experimental.

HTH.
FPC v3.2.2 and Lazarus v4.0rc3 on Windows 7 SP1 64bit.

Int3g3r

  • New Member
  • *
  • Posts: 41
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #4 on: November 24, 2025, 09:54:35 am »
Thank you all.

PascalDragon

  • Hero Member
  • *****
  • Posts: 6267
  • Compiler Developer
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #5 on: November 24, 2025, 10:02:48 pm »
Is the following still relevant with fpc3.x??
https://wiki.lazarus.freepascal.org/Windows_Programming_Tips
Quote
Please be aware that all Lazarus 1.x releases use FPC 2.6.x. FPC 2.6.x (and probably earlier versions as well) does not properly support Windows 64 bit.
Therefore, please use the 32 bit Lazarus IDE on Win64. If it is absolutely necessary to build 64 bit executables (eg explorer extensions),
please install the 64 bit cross compiler add-on for the 32 bit IDE.

No, that's not really relevant anymore with the 3.x series.

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #6 on: November 25, 2025, 11:34:44 am »
Yes, should be removed from the wiki.
It also should be removed or adapted in fpcupdeluxe:
It stays relevant for pre 3.x versions that it supports.
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12593
  • FPC developer.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #7 on: November 25, 2025, 01:56:40 pm »
Problem is that on anything before 3.0.4, win32 is not SEH , which my lead to problems with COM and/or the file open dialog.

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #8 on: November 25, 2025, 02:09:08 pm »
Should we really support that or, ahum, with a big smile, let fpcdeluxe support it?  :'( O:-) 8-) :( :o
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

Josh

  • Hero Member
  • *****
  • Posts: 1447
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #9 on: November 25, 2025, 03:17:49 pm »
Not sureif still true.

If you try to install darwin crosscompiler on a 64bit windows install you would get a big warning, saying not advised, and suggested to cross to darwin from win32.

Is this still true?
The best way to get accurate information on the forum is to post something wrong and wait for corrections.

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #10 on: November 25, 2025, 06:36:05 pm »
No. Same old issue: any cross-compile from windows 64 is OK for a long time.
Note the provision I made for legacy platforms, though: it may also apply to very old darwins.
In such cases you may also need a very old fpc... I can't test that, however. Do not have very old Apple hardware.
« Last Edit: November 25, 2025, 06:40:02 pm by Thaddy »
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

tetrastes

  • Hero Member
  • *****
  • Posts: 733
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #11 on: November 26, 2025, 10:05:48 am »
No. Same old issue: any cross-compile from windows 64 is OK for a long time.
Not for platforms supporting 80-bit extended.

Code: Pascal  [Select][+][-]
  1. writeln('SizeOf(3.1) = ', SizeOf(3.1));  // check that 3.1 is stored as extended on platforms supporting extended
  2. writeln(3.1);
The result of compilation with native 32-bit ppc386.exe and native ppcx64 at x86_64-linux:
 SizeOf(3.1) = 10
  3.09999999999999999991E+0000    - 80-bit extended precision

The result of compilation with 64-bit ppcross386.exe and ppcx64.exe -Tlinux:
SizeOf(3.1) = 10
 3.10000000000000008882E+0000     - in fact 64-bit double precision

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #12 on: November 26, 2025, 10:26:17 am »
That is correct, although I believe there is/was a work-around for it to have the 80 bit precision back.
(May be experimental? I believe Florian wrote about it?)
Apart from the work-around, for 32 bit Windows simply build or download a native 32 bit compiler.
Note there is no recent 32 bit Intel/Amd Windows version anymore, although 64 bit Intel/Amd Windows can still run 32 bit compiled code.
The 64 bit instruction set by itself can compile with much higher precision than 80 bit, like 128,256,512 but there is no high level language support for that yet. That is possible though. On the BASM level this is already supported.
In summary the 80 bit question is a bit of a quirk nowadays. If you need high precision it is not enough anyway.
If only we had intrinsics for the xmm/ymm/zmm instructions..
« Last Edit: November 26, 2025, 10:41:04 am by Thaddy »
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

tetrastes

  • Hero Member
  • *****
  • Posts: 733
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #13 on: November 26, 2025, 11:02:00 am »
This is not 80 bit question.
The question was about cross compiling from 64 bit Windows.
And it is NOT OK for those platforms, because cross compilers produce binaries, differing from ones produced by native compilers.

Thaddy

  • Hero Member
  • *****
  • Posts: 18676
  • Jungle wars. And failing health it seems.
Re: fpcupdeluxe - 32bit or 64bit IDE, trunk or stable
« Reply #14 on: November 26, 2025, 11:18:06 am »
Yes, that is correct. What I explained is that it does not matter much since 80 bit precision is legacy anyway.
Enabling the 80 bit support in the 64 bit compiler would render the same binaries, though.
I'd rather see high level support for the much higher modern precisions that dwarf 80 bit floats.
Due to censorship, I changed this to "Nelly the Elephant". Keeps the message clear.

 

TinyPortal © 2005-2018