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

Fix crossgen2 invocation error under sourcebuild #93450

Closed
wants to merge 3 commits into from

Conversation

ViktorHofer
Copy link
Member

@ViktorHofer ViktorHofer commented Oct 13, 2023

Unsure if this is the right direction but wanted to open the PR to make some progress on unblocking the installer PR.

See failure in dotnet/installer#17524

/vmr/src/runtime/artifacts/source-build/self/src/dotnet.sh /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/x64/crossgen2/tools/crossgen2.dll -o:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/System.Private.CoreLib.dll -r:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/IL/*.dll --targetarch:x64 --targetos:linux -O /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/IL/System.Private.CoreLib.dll --perfmap-format-version:1 --perfmap --perfmap-path:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/
You must install or update .NET to run this application.
App: /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/x64/crossgen2/tools/crossgen2.dll
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '8.0.0-preview.7.23375.6' (x64)
.NET location: /vmr/.dotnet/
The following frameworks were found:
9.0.0-alpha.1.23470.17 at [/vmr/.dotnet/shared/Microsoft.NETCore.App]

@jkoritzinsky why do we invoke crossgen2.dll manually here instead of going through the SDK integration?

One more question, why does runtimeconfig.json list 8.0.0-preview.7.23375.6? Shouldn't we require 9.0.0-alpha.1.23470.17 during source build?

@ghost
Copy link

ghost commented Oct 13, 2023

Tagging subscribers to this area: @hoyosjs
See info in area-owners.md if you want to be subscribed.

Issue Details

Unsure if this is the right direction but wanted to open the PR to make some progress on unblocking the installer PR.

See failure in dotnet/installer#17524

/vmr/src/runtime/artifacts/source-build/self/src/dotnet.sh /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/x64/crossgen2/tools/crossgen2.dll -o:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/System.Private.CoreLib.dll -r:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/IL/*.dll --targetarch:x64 --targetos:linux -O /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/IL/System.Private.CoreLib.dll --perfmap-format-version:1 --perfmap --perfmap-path:/vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/
You must install or update .NET to run this application.
App: /vmr/src/runtime/artifacts/source-build/self/src/artifacts/bin/coreclr/linux.x64.Release/x64/crossgen2/tools/crossgen2.dll
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '8.0.0-preview.7.23375.6' (x64)
.NET location: /vmr/.dotnet/
The following frameworks were found:
9.0.0-alpha.1.23470.17 at [/vmr/.dotnet/shared/Microsoft.NETCore.App]

@jkoritzinsky why do we invoke crossgen2.dll manually here instead of going through the SDK integration?

Author: ViktorHofer
Assignees: ViktorHofer
Labels:

area-Infrastructure-coreclr

Milestone: -

src/coreclr/crossgen-corelib.proj Outdated Show resolved Hide resolved
src/coreclr/crossgen-corelib.proj Show resolved Hide resolved
ViktorHofer and others added 2 commits October 13, 2023 16:55
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
@jkoritzinsky
Copy link
Member

We invoke it manually as we never moved this project to use the SDK integration. Also the SDK integration expects there to be a runtime pack, which CoreLib doesn't have.

The crossgen2_inbuild project targets NetCoreAppToolCurrent, so that's where the 8.0 version number comes from.

@ViktorHofer
Copy link
Member Author

@jkoritzinsky and I talked about this offline and he believes that this might only fix the first point of failure. We believe that a better path going forward would be updating NetCoreAppToolCurrent to NetCoreAppCurrent when running under source build.

@ViktorHofer ViktorHofer deleted the CrossgenSourceBuildRollforward branch October 17, 2023 11:01
@mthalman
Copy link
Member

I've logged #93666 to track the issue.

@ghost ghost locked as resolved and limited conversation to collaborators Nov 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants