On Sun, 02 Mar 2008, Sisyphus wrote:
>
> However, it won't build on ActiveState's 64-bit build of perl
> 5.10 (and 5.8.8). Are there any plans to get this module working
> on the 64-bit builds ? ... or is this an unrealistic expectation ?
>
> On my Vista 64 box, I'm using the Microsoft Platform SDK for Windows
> Server 2003 R2 compiler which, as I understand it, is the compiler
> that was used to build the 64-bit versions of ActivePerl. But when I
> try to build Win32-API-0.53 I get a number of warnings, followed by a
> list of errors that begins with:
>
> API.xs(515) : error C4235: nonstandard extension used : '__asm'
> keyword not supported on this architecture

None of the 64-bit compilers support inline assembly anymore.  The
VC++ team thinks that providing "intrinsic" is good enough:

  http://msdn2.microsoft.com/en-us/library/26td21ds.aspx

I think a more realistic option would be to move the assembly code
to a separate file and compile it using ml64.exe (a 64-bit version
of good old MASM), also included in the 64-bit Platform SDK at
this location:

  C:\Program Files\Microsoft Platform SDK\Bin\win64\x86\AMD64\ml64.exe

I have no idea what else might be involved though; I haven't looked
at the assembly level details of calling conventions in 64-bit mode,
and if anything needs to be adjusted there as well.

Cheers,
-Jan

Reply via email to