ARM64 support in the default image?

acrichton's Avatar

acrichton

05 Oct, 2018 06:31 PM

Hello! Over at rust-lang/rust we're interested in adding support to Rust for AArch64 on Windows. Our CI is failing due to a pretty opaque error which we haven't fully investigated yet, but we suspect may be because ARM64 compilers may not be installed. So as a result, we were wondering, are the ARM64 compiler and libraries installed on the default image? If not, is there an image we can opt into with them? Failing that, you wouldn't happen to have a snippet we could execute today to install them?

  1. Support Staff 1 Posted by Feodor Fitsner on 05 Oct, 2018 06:55 PM

    Feodor Fitsner's Avatar

    Hi Alex,

    Is it a part of VS 2017 (preview?) that could be optionally installed?

  2. 2 Posted by acrichton on 05 Oct, 2018 08:36 PM

    acrichton's Avatar

    I believe so yeah in that I've installed locally before. I don't actually know what set of components is necessary, I think I just checked all the checkboxes related to "arm64".

  3. Support Staff 3 Posted by Feodor Fitsner on 12 Oct, 2018 11:19 PM

    Feodor Fitsner's Avatar

    Alex,

    could you please take a look at the attached screen and compare with your local installation?

    Wondering if Spectre ARM libs is what you are looking for.

  4. 4 Posted by acrichton on 13 Oct, 2018 12:11 AM

    acrichton's Avatar

    To the best of my knowledge that should do the trick! On my machine where I've done some dabbling before I only see "Visual C++ compilers and libraries for ARM64" (and ARM, but I doubt that's required for aarch64 dev). I specifically don't have the spectre-related things install (I'm not even sure what those are), so I don't think they should be necessary for a bare minimum toolchain!

  5. Support Staff 5 Posted by Feodor Fitsner on 13 Oct, 2018 01:34 AM

    Feodor Fitsner's Avatar

    Actually, that screenshot is what we currently have enabled on VS 2017 workers. So, apparently, ARM is already enabled - I've been wondering what you have locally that it's building locally but not with us?

  6. 6 Posted by acrichton on 15 Oct, 2018 09:21 PM

    acrichton's Avatar

    Oh dear, that sounds like the issue may be on our end then! I'm unfortunately away from my windows computer for a few weeks, so we'll try to keep following up on this from our end. Thanks so much for looking into this though!

  7. Support Staff 7 Posted by Feodor Fitsner on 15 Oct, 2018 10:39 PM

    Feodor Fitsner's Avatar

    Sure, let me know what you find!

    -Feodor Fitsner, AppVeyor

    ________________________________

  8. 8 Posted by acrichton on 29 Oct, 2018 06:59 PM

    acrichton's Avatar

    Ok circling back around to this again, sorry for the delay! One point that was brought up on our end (I forget where though?) was we may just be using the wrong image. Is there a way we can see what image we're using, and your screenshot was from the Visual Studio 2017 build image, right?

  9. Support Staff 9 Posted by Feodor Fitsner on 29 Oct, 2018 07:01 PM

    Feodor Fitsner's Avatar

    Yep, that was a screenshot from VS 2017 image.

    rust-lang/rust is currently running on VS 2015 image.

  10. 10 Posted by acrichton on 29 Oct, 2018 07:02 PM

    acrichton's Avatar

    Oh ok, thanks! The commit has some configuration to try to switch the image, but I guess that configuration probably isn't actually switching it?

  11. Support Staff 11 Posted by Feodor Fitsner on 29 Oct, 2018 07:04 PM

    Feodor Fitsner's Avatar

    Yep, it could be an environment variable:

    APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
    

    or without matrix:

    image: Visual Studio 2017
    
  12. 12 Posted by acrichton on 29 Oct, 2018 07:04 PM

    acrichton's Avatar

    Ok thanks for the info! We'll try that and post back here if that ends up not working

  13. 13 Posted by acrichton on 29 Oct, 2018 07:22 PM

    acrichton's Avatar

    It was mentioned on the PR that the preview image is done to pick up things like fixes from Microsoft for the arm64 toolchain, so I just wanted to confirm, but does the "Visual Studio 2017 Preview" image also have the arm64 libraries installed like the screenshot you posted above?

  14. Support Staff 14 Posted by Feodor Fitsner on 29 Oct, 2018 07:23 PM

    Feodor Fitsner's Avatar

    Ah, good point! I've been looking into non-preview image.
    I'm going to check now.

  15. Support Staff 15 Posted by Feodor Fitsner on 30 Oct, 2018 12:01 AM

    Feodor Fitsner's Avatar

    Alex,

    I've updated Visual Studio 2017 Preview image with the latest 15.9 Preview 4.0 and installing missing C++ ARM components.

    Let me know how it worked.

  16. 16 Posted by acrichton on 30 Oct, 2018 12:15 AM

    acrichton's Avatar

    Thanks so much! I've placed our build back in the queue and will report back with the results.

  17. 17 Posted by acrichton on 30 Oct, 2018 01:10 AM

    acrichton's Avatar

    Looks like that may have done the trick! Our build, while it still failed, made more progress than that latter which indicates that the build system at least found the compilers (where it didn't before). We apparently have other issues where our build doesn't work in the new image, but we'll work through those ourselves.

    Thanks again for your help here!

  18. Support Staff 18 Posted by Feodor Fitsner on 30 Oct, 2018 01:11 AM

    Feodor Fitsner's Avatar

    No problem!

  19. 19 Posted by acrichton on 02 Nov, 2018 02:00 PM

    acrichton's Avatar

    To close the loop here our PR landed with a successful run building artifacts for ARM64. Thanks again for all your help!

  20. Support Staff 20 Posted by Feodor Fitsner on 02 Nov, 2018 03:18 PM

    Feodor Fitsner's Avatar

    Sounds great, thanks for the update!

  21. Feodor Fitsner closed this discussion on 02 Nov, 2018 03:18 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac