Skip to content

[MSVC] Build on Windows with MSVC targeting ARM64 #71

@SyahmieS

Description

@SyahmieS

We are trying to build on windows with MSVC targeting arm64. But it seems that neither the .sln nor the project file has the arm64 configuration. Does it support windows ARM64 build?

Initially, I tried to add #if !defined(_M_ARM64) to line 155 in libvorbis\os.h, which then resulted in another issue.
The issue now I was facing suggested that I wasn't targeting the right platform as well as the correct toolset which I then did by replacing the platform from x64 to ARM64 and the toolset from v142 to v143 in files: zlib.vcxproj, lpng.vcxproj, ljpeg.vcxproj, libvorbis.vcxproj, libogg.vcxproj and Torque 2D.vcxproj.
After implementing this workaround, it then fails with another issue "VC: Unsupported Target CPU" which I added the following lines of code in source\platform\types.visualc.h on line 84:
#elif defined(_M_ARM64)

define TORQUE_CPU_STRING "ARM64"

define TORQUE_CPU_ARM64

define TORQUE_LITTLE_ENDIAN

#else
which gave me the final error "error C2664: 'unsigned int Con::_InterlockedIncrement(volatile unsigned int *)': cannot convert argument 1 from 'volatile long *' to 'volatile unsigned int *''

I am unsure if Torque is able to target ARM64. Can I get some help on this?

Thanks,
Syahmie.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions