现在我们有了 .NET 核心的免费开源实现:CoreCLR。支持Windows和Linux操作系统,计划支持Mac OS。是否可以在 Windows XP 上运行 CoreCLR?
我不这么认为。原因如下: 参考资料:https://learn.microsoft.com/en-us/dotnet/articles/standard/library
Windows XP 不支持任何高于 4.0 的 .NET 框架。并且基于 .NET 4.0 的 winform 应用程序或类库不能引用 .NET Core 1.x 类库。
从 windows XP 或任何其他操作系统的源代码重新编译 .NET 核心 SDK、核心 clr 和 Corefx 可能会有更好的运气,但我认为这将非常困难。如果它更容易,MSFT 会首先做到这一点。
关于 .NET CORE 2.0? 参考:https://github.com/dotnet/core/blob/master/roadmap.md#technology-roadmaps
当心图灵焦油坑,在那里一切皆有可能,但没有什么是容易的。所以这是可能的,但由于 XP 可能缺少一些在 Win 8/10 托管实现中使用的低级 API 以及一些本机 C/C++ 编译器/目标怪癖,你可能会走很长的路。话又说回来,针对 XP 的 Core CLR 真的“有趣”吗……? ;)
如果可能的话。事实上,他们已经让它在 Windows 3.1 上运行,甚至在 MS-DOS 上运行。
https://www.hanselman.com/blog/NETEverywhereApparentlyAlsoMeansWindows311AndDOS.aspx
显然,这并不容易。您必须编译 .Net Core 运行时、安装 Win32s 库以及各种其他东西。
我破解了 dotnet 源代码并在 Windows XP 上发布了 dotnet 5 运行时:https://github.com/MakeOldGreatAgain/runtime