zufuliu / notepad4

Notepad4 (Notepad2⨯2, Notepad2++) is a light-weight Scintilla based text editor for Windows with syntax highlighting, code folding, auto-completion and API list for many programming languages and documents, bundled with file browser plugin matepath.
Other
2.6k stars 184 forks source link

Windows SDK 10.0.26100.0 dropped support for 32-bit ARM #839

Open zufuliu opened 4 weeks ago

zufuliu commented 4 weeks ago

32-bit ARM binary is provided for jailbreak Windows RT (see issue #134).

Not sure whether it's a bug, but latest Windows SDK (10.0.26100.1) no longer install libs for 32-bit ARM: image

Following is building error:

D:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.targets(49,5): error MSB8037: The Windows SDK version 10.0.26100.0 for Desktop C++ ARM Apps was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution".  [D:\notepad4\notepad4\build\VS2017\Notepad4.vcxproj]

______________________________
[ERROR] Compilation failed!
______________________________

Project file support for 32-bit ARM will be kept until it starts failing on GitHub Actions.

cc @easyentry

easyentry commented 3 weeks ago

Hello Zufu Liu,

thanks for providing arm32 support so far. Everything works fine.   W11 b26100 arm64OS is generally crippled release, because MS has removed arm32 subsystem from it. The same applies to its Kits. This was done in the situation, when MS (and others) doesn't provide arm64 binaries for their arm32 UWP/Store programs: -Minecraft Bedrock arm32, -Wireless Display Adapter arm32, -OneDrive arm32, -Paint 3D arm32, -Font Maker arm32, -OneNote arm32 -Sway arm32, -VLC arm32 (Videohelp)... ...while the situation is even worse for non-UWP. For that reason nobody at arm64 community updated from b22621 to b26100, but majority decided to skip b26100 entirely.   For another versions W11 b22621 and b22000 and all W10 builds arm32 subsystem remains working as usual. For that reason, please use SDK v10-0-22621-1, which has no problems with arm32 libs. So, please, don't drop arm32 support, but use SDK v10-0-22621-1 instead. Thanks.   --  Best regards, Milan Benes

Wednesday, August 14, 2024, 1:57:32 PM, you wrote:

32-bit ARM binary is provided for jailbreak Windows RT (see issue #134). Not sure whether it's a bug, but latest Windows SDK (10.0.26100.1) no longer install libs for 32-bit ARM: image.png (view on web) Following is building error: D:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\VC\v170\Microsoft.Cpp.WindowsSDK.targets(49,5): error MSB8037: The Windows SDK version 10.0.26100.0 for Desktop C++ ARM Apps was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". [D:\notepad4\notepad4\build\VS2017\Notepad4.vcxproj]


[ERROR] Compilation failed!


Project file support for 32-bit ARM will be kept until it starts failing on GitHub Actions. cc @easyentry — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.  

zufuliu commented 3 weeks ago

OK, I will uninstall 26100 and reinstall 22621, here will need some fix when GitHub actions installed 26100. https://github.com/zufuliu/notepad4/blob/57527b21f5a810aa10fb6e4cdbf542f8fa2f9d05/build/VS2017/Notepad4.vcxproj#L88-L92

easyentry commented 3 weeks ago

Hello Zufu Liu,

THANKS!   BTW:

  1. DotNET Framework v4-8-1 added the option "run-as-native-arm64" for "AnyCPU" exe/dll. https://medium.com/globant/whats-new-in-net-framework-4-8-1-9b6966adcf41  FindInFiles is such AnyCPU file, but it is probably compiled with v4-8-0, so it runs in W11arm64OS like x64. Could you please recompile it with DN-FW v4-8-1, so it can run as arm64? It will be 1st such EXE I have, so I can do some interesting testing with it.  
  2. Did you rename metapath.exe (from Notepad2) to matepath.exe (in Notepad4)? Why?  
  3. What is the HD version?   Thanks for your time.   --  Best regards, Milan Benes

Thursday, August 15, 2024, 11:53:19 AM, you wrote:

OK, I will uninstall 26100 and reinstall 22621, here will need some fix when GitHub actions installed 26100. https://github.com/zufuliu/notepad4/blob/57527b21f5a810aa10fb6e4cdbf542f8fa2f9d05/build/VS2017/Notepad4.vcxproj#L88-L92 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

zufuliu commented 3 weeks ago
  1. Source code for FindInFiles is at https://github.com/zufuliu/FindInFiles, you can try to change https://github.com/zufuliu/FindInFiles/blob/main/NET48/FindInFiles.NET48.csproj#L11
    - <TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
    + <TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>

and check result exe.

.Net 6 and .Net 8 both have ARM64 installers, should FindInFiles-net6.0.zip, FindInFiles-net8.0.zip already works?

  1. Renaming was discussed on #346.

  2. HD is for Hi-DPI screen, which contains extra image resources (hundred KB).

zufuliu commented 3 weeks ago

DotNET Framework v4-8-1 added the option "run-as-native-arm64" for "AnyCPU" exe/dll.

Please test exe for .NET 4.8.1 from https://github.com/zufuliu/FindInFiles/actions/runs/10418769486

easyentry commented 3 weeks ago

Hello Zufu Liu,   It runs as arm64 natively, when it is run like this: runas /machine:arm64 /trustlevel:0x20000 FindInFiles.exe ...otherwise it runs as x64 under W11 (probably some MS compatibility decision for the case, when there are also native dependepcies DLLs etc.)   I didn't tested W10 arm64 yet (there is no x64 mode there).   Thanks.  --  Best regards, Milan Benes

Friday, August 16, 2024, 12:53:32 PM, you wrote:

DotNET Framework v4-8-1 added the option "run-as-native-arm64" for "AnyCPU" exe/dll. Please test exe for .NET 4.8.1 from https://github.com/zufuliu/FindInFiles/actions/runs/10418769486 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.