[fpc-pascal] Implementing AggPas with PtcGraph
james at productionautomation.net
Wed Jun 14 04:16:26 CEST 2017
>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?
From: fpc-pascal [mailto:fpc-pascal-bounces at lists.freepascal.org] On Behalf Of Stefan V. Pantazi
Sent: Tuesday, June 13, 2017 9:25 PM
To: FPC-Pascal users discussions <fpc-pascal at 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?
> fpc-pascal maillist - fpc-pascal at lists.freepascal.org
fpc-pascal maillist - fpc-pascal at lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
More information about the fpc-pascal