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

Stellarium 1.0+ no longer installs on Windows 11 arm64 #2962

Closed
tjzepf opened this issue Jan 1, 2023 · 26 comments · Fixed by #3447
Closed

Stellarium 1.0+ no longer installs on Windows 11 arm64 #2962

tjzepf opened this issue Jan 1, 2023 · 26 comments · Fixed by #3447
Assignees
Labels
help wanted We may not have the hardware or expertise
Milestone

Comments

@tjzepf
Copy link

tjzepf commented Jan 1, 2023

Expected Behaviour

Prior to Stellarium 1.0, the software would install and operate fine on a Windows arm64 installation running on a M1 Mac under Parallels.

Actual Behaviour

The install fails with "This program can only be installed on versions of Windows designed for the following processor architectures: x64"

Steps to reproduce

System

  • Stellarium version: stellarium-1.2-qt6-win64.exe
  • Operating system: Windows 11 21H2 (arm64)
  • Graphics Card: M1 (Parallels Emulation)
  • Screen type (if applicable): N/A

Logfile

If possible, attach the logfile log.txt from your user data directory. Look into the Guide for its location.

@tjzepf
Copy link
Author

tjzepf commented Jan 1, 2023

Screenshot 2023-01-01 at 8 50 36 AM

@github-actions
Copy link

github-actions bot commented Jan 1, 2023

Thanks for adding your first issue to Stellarium. If you have questions, please do not hesitate to contact us.

@gzotti
Copy link
Member

gzotti commented Jan 1, 2023

While I don't understand why anyone would want to run an emulation while there is a native version for macOS on ARM, you could try to run the Qt5-based Windows version in the emulator. Or just use the native version.

@10110111
Copy link
Contributor

10110111 commented Jan 1, 2023

you could try to run the Qt5-based Windows version

This doesn't make any principal difference: the error is about instruction set architecture, which obviously isn't compatible, regardless of the libraries used.

So, the only sensible solution is to use the native macOS version. If one really needs to run Stellarium in a Windows virtual machine, the VM should emulate an x86_64 CPU (x64, if we use Microsoft's terminology).

@gzotti Do we not provide a Windows arm64 build?

@tjzepf
Copy link
Author

tjzepf commented Jan 1, 2023

Windows arm64 has a quite robust emulation for x64 binaries. Stellarium 0.22.2 runs flawlessly under this emulation. As for why not run native on MacOS, this is the use case:

I am an astrophotographer, and give demonstrations of image acquisition on my Mac using simulated astrophotography hardware. Most of this software only runs under Windows (sigh), so I need to operate in a Windows environment. Running Stellarium with the Telescope Control plugin is nice to have as it helps visualize where the telescope is pointing.

I realize this is not a mainstream use case, but there is a nascent but growing collection of hardware that can run Windows 11 on ARM. As the software (at least used to) run fine under emulation, this seems like a simple modification to the architecture check during install.

@gzotti
Copy link
Member

gzotti commented Jan 1, 2023

@10110111 I am also aware that the architecture of our qt5 build should also just be x64, however, if previous (only qt5-based) versions worked, so may the new qt5-based build. There is no arm64 Windows build of Stellarium so far. How many arm64-Windows systems are out there? I think they are coming, but only as tech previews. (?)

@tjzepf With your specifying TelescopeControl plugin, my recommendation gets stronger. We have a handful of reports that indicate the TelescopePlugin in the Qt6 builds has some problem. Please try the qt5-based build.

@tjzepf
Copy link
Author

tjzepf commented Jan 2, 2023

@gzotti , yes the qt5 version installs fine. Oddly, though, the Telescope Control plugin does not list ASCOM as a choice for telescope control. Neither does it list ASCOM for the 0.22.2 version either.

@gzotti
Copy link
Member

gzotti commented Jan 2, 2023

You need to install ASCOM drivers before using that. Please see the User Guide, I don't use this part of the program.

@alex-w
Copy link
Member

alex-w commented Feb 18, 2023

@gzotti Do we not provide a Windows arm64 build?

No. Qt 6.4 has a technical preview for support Windows/arm64, but without important libraries.

@alex-w alex-w added the help wanted We may not have the hardware or expertise label Feb 18, 2023
@alex-w
Copy link
Member

alex-w commented Mar 5, 2023

We can allow installation win64 application into arm64 environment, but... I fear this is bad idea.

@timthorn
Copy link

timthorn commented Mar 5, 2023

We can allow installation win64 application into arm64 environment, but... I fear this is bad idea.

Is your concern that things will break? As @tjzepf says, x64 emulation on Arm in Windows 11 is quite robust, though in previous versions only x32 emulation existed (later Insider builds of Windows 10 did have x64 emulation but it's only in Windows 11 that it is officially supported).

Happy to test a drop on a Lenovo Thinkpad X13s and my son's Microsoft Surface Pro 9, if that would help.

@alex-w alex-w self-assigned this Mar 5, 2023
@alex-w alex-w added this to the 23.1 milestone Mar 5, 2023
@alex-w
Copy link
Member

alex-w commented Mar 5, 2023

@timthorn
Copy link

timthorn commented Mar 5, 2023

Thanks @alex-w. The CI system's limit for downloads of that file has been hit so I'm unable to get the binary today, but I'll keep trying over the next few days.

@alex-w alex-w added the state: in progress The problem is in process of solution... label Mar 8, 2023
@timthorn
Copy link

timthorn commented Mar 9, 2023

Thanks again @alex-w. The build looks to work for me. Performance isn't great out of the box (2-3FPS in MESA mode and 5-6FPS with acceleration) but turning satellites and ground off gets to a very usable ~15FPS.

Although you say that important libraries are missing, could building with Arm64EC help? I think that's meant to allow you to mix x86 and Arm code in the same process. More here: https://learn.microsoft.com/en-us/windows/arm/arm64ec

@alex-w
Copy link
Member

alex-w commented Mar 9, 2023

Thanks again @alex-w. The build looks to work for me. Performance isn't great out of the box (2-3FPS in MESA mode and 5-6FPS with acceleration) but turning satellites and ground off gets to a very usable ~15FPS.

OK, the original issue is fixed

Although you say that important libraries are missing, could building with Arm64EC help? I think that's meant to allow you to mix x86 and Arm code in the same process. More here: https://learn.microsoft.com/en-us/windows/arm/arm64ec

Some important Qt modules are not ported to Windows/arm64 architecture, so, we'll wait the full support ARM64 by framework.

@alex-w alex-w closed this as completed Mar 9, 2023
@timthorn
Copy link

timthorn commented Mar 9, 2023

Thanks @alex-w.

Some important Qt modules are not ported to Windows/arm64 architecture, so, we'll wait the full support ARM64 by framework.

My point was that because ArmEC allows interworking of x86 and native Arm code which will deliver some speedup, you might not need to wait for all the modules to be ported. Of course, if you want to do a single piece of work to target full native, I understand - and in any case greatly appreciate you having enabling the installer to work on Windows on Arm, thank you.

On Qt, is it just Qt Webengine that you need but are missing?

@alex-w
Copy link
Member

alex-w commented Mar 9, 2023

On Qt, is it just Qt Webengine that you need but are missing?

Nope. Serial ports missing too.

@alex-w alex-w added state: fixed and removed state: in progress The problem is in process of solution... labels Mar 12, 2023
@github-actions
Copy link

Hello @tjzepf!

The bug or issue has been fixed! You may test it via building Stellarium from source code or wait the weekly development snapshot...

@alex-w alex-w added state: published The fix has been published for testing in weekly binary package and removed state: fixed labels Mar 13, 2023
@github-actions
Copy link

Hello @tjzepf!

Please check the fresh version (development snapshot) of Stellarium:
https://github.com/Stellarium/stellarium-data/releases/tag/weekly-snapshot

@alex-w alex-w removed the state: published The fix has been published for testing in weekly binary package label Mar 27, 2023
@github-actions
Copy link

Hello @tjzepf!

Please check the latest stable version of Stellarium:
https://github.com/Stellarium/stellarium/releases/latest

@hmartinez82
Copy link
Contributor

hmartinez82 commented Oct 2, 2023

I've got it compiling and launching natively for ARM64. Albeit using MSYS2 as the dev environment and Clang as the compiler msys2/MINGW-packages#18653 and without the Telescope plugin, ShowMySky or QtWebEngine

@alex-w
Copy link
Member

alex-w commented Oct 2, 2023

I've got it compiling and launching natively for ARM64. Albeit using MSYS2 as the dev environment and Clang as the compiler msys2/MINGW-packages#18653 and without the Telescope plugin, ShowMySky or QtWebEngine

-DENABLE_MEDIA=Off should be enough to disable media support

@hmartinez82
Copy link
Contributor

hmartinez82 commented Oct 2, 2023

I don't think that Media support was the issue The issue was that MSYS2 already has a Qt version that has the fix for https://bugreports.qt.io/browse/QTBUG-105984. Thus I commented that out in the CMake script. I'm going of course to upstream the fix here sometime soon (which is to compare Qt 6.4.0 or less than 6.4.1). I have a bunch of questions regarding the dependencies needed for Telescope and ShowMySky too.

@1963m
Copy link

1963m commented Oct 14, 2023

Tengo instalado el Stellarium 0.22.0 en Windows 11 y el problema es que a la hora de control de telescopio este solo se mueve en dirección suroeste mientas si apunto a un objeto dirección sureste el telescopio no gira,otro problema es que cuanto el telescopio hace un giro largo el nombre del telescopio y la diana desaparece

@gzotti
Copy link
Member

gzotti commented Oct 14, 2023

@1963m You are commenting in an unrelated and closed issue thread, and in a language at least most of the developers have to use a translator. In addition, you don't say what kind of telescope you have. And you are using an outdated version. As visible in numerous other places here, there are unsolved issues with telescope support in 1.0+/Qt6. We will not investigate new spurious problems reported in 0.22 in an unrelated issue thread when they cannot be reproduced in 23.3.

@alex-w
Copy link
Member

alex-w commented Oct 23, 2023

Please check the fresh version (development snapshot) of Stellarium:
https://github.com/Stellarium/stellarium-data/releases/tag/weekly-snapshot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted We may not have the hardware or expertise
Development

Successfully merging a pull request may close this issue.

7 participants