>If you are already on a win64 machine then your default target CPU should >already be x86_64. why do you need fpc-3.0.2-cross-i386-win32-win64? Correction: I start with fpc-3.0.2.i386-win32 because there is no precompiled version for win64 of freepascal I tried to compile it myself is it's just a confusing mess that I can't get to work. So I then need to install fpc-3.0.2-cross-i386-win32-win64 to compile x64 with the above fpc-3.0.2.i386-win32 running on my x64 machine.
With Lazarus I am able to do it the other way around, I install lazarus-1.6.4-fpc-3.0.2-win64.exe so from there I can compile x64 programs, then install lazarus-1.6.4-fpc-3.0.2-cross-i386-win32-win64.exe so I can also compile Win32 programs with Lazarus. James -----Original Message----- From: fpc-pascal [mailto:fpc-pascal-boun...@lists.freepascal.org] On Behalf Of James Richters Sent: Tuesday, June 13, 2017 10:16 PM To: 'FPC-Pascal users discussions' <fpc-pascal@lists.freepascal.org> Subject: Re: [fpc-pascal] Implementing AggPas with PtcGraph >It is unclear to me whether you are on a win32 or win64 OS? I am on Windows 10 x64 OS >If you are already on a win64 machine then your default target CPU should >already be x86_64. why do you need fpc-3.0.2-cross-i386-win32-win64? fpc-3.0.2-cross-i386-win32-win64 is to be able to compile as a win32 program on a win64 machine. I installed that so I could compile as win32 for comparison. The test program works if compiled with Lazarus for win32 but not win64 >While in lazarus open agg_rasterizer_scanline_aa.pas, go ro line 611 press Ctr >and click on ptrcomp. It should open agg_basics.pas, the comment may apply to >your situation. I was able to follow this and get to the comment in agg_basics, I read the comment that indicates some difference and possible problem with pointers on win64 but I don't know what I can do about it and why you are able to cross compile for win64 and it works. I wonder if this is an issue with Freepascal 3.0.2, and aggpas hasn't been fixed for it yet and I need to use Freepascal 3.0.1 to get it to work? James -----Original Message----- From: fpc-pascal [mailto:fpc-pascal-boun...@lists.freepascal.org] On Behalf Of Stefan V. Pantazi Sent: Tuesday, June 13, 2017 9:25 PM To: FPC-Pascal users discussions <fpc-pascal@lists.freepascal.org> Subject: Re: [fpc-pascal] Implementing AggPas with PtcGraph While in lazarus open agg_rasterizer_scanline_aa.pas, go ro line 611 press Ctr and click on ptrcomp. It should open agg_basics.pas, the comment may apply to your situation. It is unclear to me whether you are on a win32 or win64 OS? If you are already on a win64 machine then your default target CPU should already be x86_64. why do you need fpc-3.0.2-cross-i386-win32-win64? On 06/13/2017 08:25 PM, James Richters wrote: >> Noting your problems with compilation, you may want to consider using >> Lazarus IDE as well. > > I have just installed Lazarus but still can't get the > aggpas_ptcgraph_output.pas sample program to run when compiled for x64. > Here is what I have done. > > Downloaded and installed lazarus-1.6.0-fpc-3.0.0-win64.exe and > accepted all defaults Downloaded and installed > lazarus-1.6.4-fpc-3.0.2-cross-i386-win32-win64.exe and accepted the default > install directory. > Copied aggpas to C:\lazarus\fpc\3.0.2\units\i386-win32 > Copied aggpas to C:\lazarus\fpc\3.0.2\units\x86_64-win64 > > Opened a sample program the uses just ptcgraph, when it asked to > create a project I said yes then selected 'Program' from the list I > was able to compile and run it with options for OS win32 CPU i386 as > well as OS win64 CPU x86_64 and it ran fine with both versions I opened > aggpas_ptcgraph_output.pas the same way and selected program. If I select OS > win32 CPU i386 it compiles and runs fine, no problems When I select OS win64 > CPU x86_64 and try to run it, it opens both the console window and graphics > window, then I get an error box reading: > > Project aggpas_ptcgraph_output raised exception class 'external: SIGSEGV' > In file 'C:\lazarus\fpc\3.0.2\u..\agg_rasterizer_scanline_aa.pas' at > line 611 while cell_aa_ptr_prt(ptrcomp(j) + 1 * 4^^.x<J^.x do > > Any ideas why this is happening? > > James > > > > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal > -- _______________________________________________________ _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal