After a change in the EiffelStudio Github repository my local build of EiffelStudio fails. It started after I pulled the latest changes from the repository to my computer and I think I have found the change that causes the failure on my computer:
It is file "Src/Eiffel/eiffel/com_il_generation/Core/run-time/runtime.cs" and this is the commit:
With this commit some "return true;" and "return false;" statements in file runtime.cs were change to "return RuntimeInformation.IsOSPlatform(OSPlatform.Windows);" and corresponding.
- Compile .Net framework 4.0 [EiffelSoftware.Runtime.dll]
Microsoft (R) Program Maintenance Utility, Version 14.43.34809.0
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
copy C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\dotnet\helpers\isekey.snk isekey.snk
1 Datei(en) kopiert.
msbuild runtime.sln /p:TargetFrameworkVersion=v4.7;ToolsVersion=4.7
MSBuild-Version 17.13.19+0d9f5a35a für .NET Framework
Der Buildvorgang wurde am 12.03.2025 14:44:29 gestartet.
Projekt "C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.sln" a
uf Knoten "1" (Standardziele).
ValidateSolutionConfiguration:
Die Projektmappenkonfiguration "Debug|Any CPU" wird erstellt.
Das Projekt "C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\
runtime.sln" (1) erstellt "C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtim
e.csproj" (2) auf Knoten "1" (Standardziele).
PrepareForBuild:
Das Verzeichnis "obj\Release\" wird erstellt.
CoreCompile:
C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\Roslyn\csc.exe /noconfig /unsafe- /checke
d- /nowarn:1701,1702 /fullpaths /nostdlib+ /errorreport:prompt /warn:4 /baseaddress:285212672 /highentropyva+ /refere
nce:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7\mscorlib.dll" /reference:"C:\
Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7\System.Core.dll" /reference:"C:\Progr
am Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7\System.Data.dll" /reference:"C:\Program Fi
les (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7\System.dll" /reference:"C:\Program Files (x86)\
Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7\System.Xml.dll" /debug- /filealign:4096 /keyfile:isekey.s
nk /optimize+ /out:obj\Release\EiffelSoftware.Runtime.dll /subsystemversion:6.00 /target:library /warnaserror- /utf8o
utput /langversion:7.3 agent_proxy.cs any.cs assertions.cs custom_attributes\assertion_level_attribute.cs custom_attr
ibutes\eiffel_class_type_mark_attribute.cs custom_attributes\eiffel_consumable_attribute.cs custom_attributes\eiffel_
name_attribute.cs custom_attributes\eiffel_version_attribute.cs custom_attributes\interface_type_attribute.cs custom_
attributes\rt_interface_type_attribute.cs custom_attributes\type_feature_attribute.cs eiffel_exception.cs eiffel_type
_info.cs enums\assertion_level_enum.cs enums\class_type_mark.cs gen_conf.cs rt_custom_attribute_data.cs rt_exception_
manager.cs rt_extension.cs rt_parameter_utility.cs rt_reference_comparer.cs runtime.cs runtime_assembly_info.cs types
\basic_type.cs types\character_32_type.cs types\class_type.cs types\formal_type.cs types\generic_type.cs types\none_t
ype.cs types\tuple_type.cs types\type.cs "obj\Release\.NETFramework,Version=v4.7.AssemblyAttributes.cs"
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(660,10): err
or CS0103:
Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\Ei
ffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(660,42): err
or CS0103:
Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelStud
io\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(663,13): err
or CS0103: Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\Ei
ffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(663,45): err
or CS0103: Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelStud
io\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(669,10): err
or CS0103: Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\Ei
ffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(669,42): err
or CS0103: Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelStud
io\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
CompilerServer: server - server processed compilation - runtime
Die Erstellung des Projekts "C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run
-time\runtime.csproj" ist abgeschlossen (Standardziele) -- FEHLER.
Die Erstellung des Projekts "C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run
-time\runtime.sln" ist abgeschlossen (Standardziele) -- FEHLER.
Fehler beim Buildvorgang.
"C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.sln" (Standard
ziel) (1) ->
"C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj" (Stand
ardziel) (2) ->
(CoreCompile Ziel) ->
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(660,10): e
rror CS0103: Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\
EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(660,42): e
rror CS0103: Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelSt
udio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(663,13): e
rror CS0103: Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\
EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(663,45): e
rror CS0103: Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelSt
udio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(669,10): e
rror CS0103: Der Name "RuntimeInformation" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\
EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
C:\Users\thomas\Documents\GitHub\EiffelStudio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.cs(669,42): e
rror CS0103: Der Name "OSPlatform" ist im aktuellen Kontext nicht vorhanden. [C:\Users\thomas\Documents\GitHub\EiffelSt
udio\Src\Eiffel\eiffel\com_il_generation\Core\run-time\runtime.csproj]
0 Warnung(en)
6 Fehler
Verstrichene Zeit 00:00:01.60
NMAKE : fatal error U1077: "msbuild runtime.sln /p:TargetFrameworkVersion=v4.7;ToolsVersion=4.7": Rückgabe-Code "0x1"
Stop.
I marked some of the errors in bold. Basically it says "The name 'RuntimeInformation' does not exist in the current context" and similar.
When I replace all lines containing "RuntimeInformation" with the lines in the previous version of the file "Src/Eiffel/eiffel/com_il_generation/Core/run-time/runtime.cs" I get no errors!
Is it a problem on my computer (Windows 11) or is something missing the current Github repository?