Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building ZT1 on Windows arm64 arch #1141

Open
bradsoto opened this issue Feb 15, 2020 · 1 comment
Open

Building ZT1 on Windows arm64 arch #1141

bradsoto opened this issue Feb 15, 2020 · 1 comment
Labels
Type: CI / Build problem Developer/build issues with the codebase Windows Windows-related issue

Comments

@bradsoto
Copy link

bradsoto commented Feb 15, 2020

When building zerotier-one for Windows on arm64 I encounter the following error:

This header is specific to X86 and X64 targets

Inside the file node/Salsa20.hpp:

#if (!defined(ZT_SALSA20_SSE)) && (defined(__SSE2__) || defined(__WINDOWS__))
#define ZT_SALSA20_SSE 1
#endif

This is not true for Windows on arm64. The compilation pulls in emmintrin.h (where the first error originates). When I remove that header I get errors about sse2-specific instructions, and it fails as well. It seems like the change has to happen both in Salsa20.hpp and in the solution file.

@bradsoto bradsoto changed the title Builing ZT1 on Windows arm64 arch Building ZT1 on Windows arm64 arch Feb 15, 2020
@bradsoto
Copy link
Author

I was able to get the driver to build for arm64 using WDK 16299 by adding a configuration "Win10 Release" and a platform arm64 to the solution files and defining

#define _ARM64_ 1
#define NDIS670

However I am left with .obj files and no linked driver. Looks like OpenVPN has has the tap driver available since April 2019.

OpenVPN/tap-windows6#75

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: CI / Build problem Developer/build issues with the codebase Windows Windows-related issue
Projects
None yet
Development

No branches or pull requests

3 participants