Recent

Author Topic: Serious dumb question re 32/64/bit install for 64bit Win7  (Read 7468 times)

dkjMusic

  • Full Member
  • ***
  • Posts: 146
Serious dumb question re 32/64/bit install for 64bit Win7
« on: September 04, 2012, 04:34:00 pm »
I'm on 64bit Win7. Which Lazarus 1.0 do I install, 32 or 64bit? If I go with 64bit, can I create 32bit apps for others?

Thanks for your patience.
Windows 7 Ultimate/32 bit;
Lazarus 0.9.31/Rev 33300;
FPC 2.7.1/Rev 19464;
GDB 7.0.50;
(via CodeTyphon 2.30)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6600
  • Debugger - SynEdit - and more
    • wiki
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #1 on: September 04, 2012, 04:37:48 pm »
The win64 installation currently only generates 64 bit apps.

You can install both.

Someday the win64 install should include 32 bit generation. But no date given yet

Knipfty

  • Full Member
  • ***
  • Posts: 230
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #2 on: September 04, 2012, 04:46:12 pm »
dkjMusic,

I too have Win7 64 bit.  I use the 32 bit version of Lazarus.  And when you stop and think about it, unless you need more than 4 GB of address space, 64 bit apps don't really buy you much since 32 bit apps work just fine in 64 bit Windows.

Knipfty
32-bit Lazarus 1.0 FPC 2.6.0, 64-bit Win 7, Advantage DB 10.10

Leledumbo

  • Hero Member
  • *****
  • Posts: 8266
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #3 on: September 04, 2012, 05:38:27 pm »
Quote
If I go with 64bit, can I create 32bit apps for others?
Yes, you can. But before you try to do it: No, it's not possible out of the box. Please search the forum regarding cross compilation for explanations.

NeoDreamer

  • Newbie
  • Posts: 2
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #4 on: September 05, 2012, 04:19:03 pm »
32bit better than 64bit.
64bit is not stable. 64bt has some problem shell component(OpenDialog, SaveDialog).
If you use Dialog component on 64bit. It occur memory leak and crash on some systems.

rhapdog

  • New Member
  • *
  • Posts: 11
  • Woof y'all!
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #5 on: May 06, 2013, 07:19:59 pm »
Quote
If I go with 64bit, can I create 32bit apps for others?
Yes, you can. But before you try to do it: No, it's not possible out of the box. Please search the forum regarding cross compilation for explanations.

You know, I've searched the forum, and I can't come up with that.  All I can find is how to cross compile 32-bit into 64-bit, but not the other way around.

Every forum topic on this subject is a "search the forums and wiki" answer, but it is never actually answered in either place, at least not that I can find.  I have been searching for 3 days.  I suppose you have to remember the exact post to be able to find it again.  How about some actual help instead of ... oh never mind, I don't wish to say something insulting right now.  I am pretty frustrated after searching for 3 days.  So far what I have found is that the people here are only willing (for the majority at least) to actually help and assist with people running Linux or anything other than Windows.  Very unfriendly, if you ask me.

32bit better than 64bit.
64bit is not stable. 64bt has some problem shell component(OpenDialog, SaveDialog).
If you use Dialog component on 64bit. It occur memory leak and crash on some systems.

I certainly hope this has changed in 8 months.  As far as that first sentence, I hope you were just talking about the Lazarus package, and not in general, because I'd hate to have to take someone to school on that one.

I need to use the 64-bit Lazarus IDE on Windows 7 64-bit.  I want to compile for 64 and 32 bit Windows.  I have run out of time to search for this answer, as after 3 days of non-productive search, I'd rather continue using Delphi 2010 and not bother converting my projects than make the leap to Lazarus.  The only reason I want to jump into Lazarus is so I can compile both 32 and 64 bit versions easily, once properly set up.  I simply don't want to pay for the upgrade again for Delphi just to get 64-bit compiling, that the IDE won't be able to run or debug. 
Code: [Select]
uses 'Signature.pas';
function ASCII(Requestor: TUser): TReceive;
begin
  Writeln(Requestor, 'ASCII and ye shall receive.');
end;

Leledumbo

  • Hero Member
  • *****
  • Posts: 8266
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #6 on: May 07, 2013, 08:46:01 am »
Quote
All I can find is how to cross compile 32-bit into 64-bit, but not the other way around.
The principle is the same, only the options differ.
Quote
How about some actual help instead of ...
  • Download FULL FPC sources (Lazarus installer contains only library sources)
  • Build the cross compiler bundle (compiler+RTL+FCL+3rd party packages)*
  • Install to the same directory as your native compiler bundle
  • Done
Now the * part:
  • Open command prompt / terminal
  • cd to FPC source directory
  • execute: make crossall OS_TARGET=<your os target> CPU_TARGET=<your cpu targer>, in your case that will be: OS_TARGET=win32 CPU_TARGET=i386
  • if everything goes well (it should if you use stable version), execute: make crossinstall OS_TARGET=<your os target> CPU_TARGET=<your cpu targer> INSTALL_PREFIX=<your fpc base dir, e.g. C:\Lazarus\fpc, ensure underneath it directly exists bin, units, doc, etc. directory, NOT a version number. In case of version number, then the value will be: C:\Lazarus\fpc\2.6.2 assuming the version number directory is 2.6.2>
  • Check that you have ppcross386 in the same directory with ppcx64)
Note that above instructions assume you already have binutils for targets where FPC doesn't have internal assembler and linker yet (other than i386-win32 and x86_64-win64), so make sure you have it if you want to try other targets.

There, I rewrite here my answer in some other topics (which we avoid by telling you to search the forum and wiki, unfortunately sometimes we don't give exact link due to some circumstances).
Quote
So far what I have found is that the people here are only willing (for the majority at least) to actually help and assist with people running Linux or anything other than Windows.  Very unfriendly, if you ask me.
Maybe because the majority uses Linux nowadays (this is just my guess, though), I personally have moved permanently to Linux (my last Windows is XP), which is why I can't answer Windows specific questions, especially those related to Windows Vista/7/8.

rhapdog

  • New Member
  • *
  • Posts: 11
  • Woof y'all!
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #7 on: May 07, 2013, 01:54:15 pm »
@Leledumbo:
If I have to download the full FPC sources anyway, then wouldn't it be just as easy to do the following? (Sorry, been thinking about this a bit)
---------------------------------------------------------
1. Download and install the 64-bit Lazarus for Windows.
2. Download and install the 32-bit FPC for Windows.
3. Copy all the 32-bit FPC into the Lazarus install.
4. Configure a tool for Lazarus to allow direct 32-bit compilation without cross-compiling.

Since you can directly compile to 32-bit with FPC, and can directly compile to 64-bit with Lazarus (because Lazarus uses a native 64-bit FPC, which isn't distributed elsewhere), then would it not be easier to simply take advantage and use both native compilers?

Code: [Select]
uses 'Signature.pas';
function ASCII(Requestor: TUser): TReceive;
begin
  Writeln(Requestor, 'ASCII and ye shall receive.');
end;

Leledumbo

  • Hero Member
  • *****
  • Posts: 8266
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #8 on: May 07, 2013, 01:58:46 pm »
Quote
If I have to download the full FPC sources anyway, then wouldn't it be just as easy to do the following?
It's up to you, I'm telling the cross compilation way so it can be expanded to other targets instead of just those two windows kinds.

rhapdog

  • New Member
  • *
  • Posts: 11
  • Woof y'all!
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #9 on: May 07, 2013, 04:18:09 pm »
It's up to you, I'm telling the cross compilation way so it can be expanded to other targets instead of just those two windows kinds.

Good idea.  For the future, it would be best to make sure I'll be able to do this for other platforms, so I'll get it set up that way.  Thanks for all the help.
Code: [Select]
uses 'Signature.pas';
function ASCII(Requestor: TUser): TReceive;
begin
  Writeln(Requestor, 'ASCII and ye shall receive.');
end;

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8719
  • FPC developer.
Re: Serious dumb question re 32/64/bit install for 64bit Win7
« Reply #10 on: May 26, 2013, 01:24:34 pm »
I too have Win7 64 bit.  I use the 32 bit version of Lazarus.  And when you stop and think about it, unless you need more than 4 GB of address space, 64 bit apps don't really buy you much since 32 bit apps work just fine in 64 bit Windows.

It might be 2GB, then signed integers start overflowing.  Note you need to set $PEFLAGS to get 32-bit apps to use more than 2GB of memory.

 

TinyPortal © 2005-2018