Failure to build .NET 8 preview 4 from source on Ubuntu 23.10 devel #3457
Replies: 8 comments 3 replies
-
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
Beta Was this translation helpful? Give feedback.
-
There are a few packages (such as
In your reproducer steps, you don't run I don't yet understand the failure with |
Beta Was this translation helpful? Give feedback.
-
Can you try the |
Beta Was this translation helpful? Give feedback.
-
To reiterate @omajid's comments and add a little... To build offline you will need a set of prebuilts (we are working on removing these) which can be mostly be obtained via running |
Beta Was this translation helpful? Give feedback.
-
Indeed, I missed the Prebuilts file and did not include it in the bootstrap package. So I repackaged it to include both files (Prebuilts and Artifacts) and retried building the non-bootstrap package, now by linking both tar files (step 8 of the reproduce steps) then running However, going back a few steps, I built the bootstrap package by running the |
Beta Was this translation helpful? Give feedback.
-
When you did this were you using --with-sdk or not? |
Beta Was this translation helpful? Give feedback.
-
I was able to get past the RID-specific App Host error and run a fully offline non-bootstrap build of .NET 8 preview 4 by injecting these 3 nupkgs in the Prebuilts tar.gz archive:
Now I need these nupkgs to be included by default in Prebuilts tar.gz when building the bootstrap package, so here's what I did:
So I noticed that the Prebuilts archive became Is there a place in the source tree where I can explicitly declare that these nupkgs should be included? How does msbuild derive the content of the final Prebuilts archive? |
Beta Was this translation helpful? Give feedback.
-
The prebuilts archive that gets produced from the build will only contain the actual prebuilt packages referenced by the built itself. It will not necessarily be the same prebuilts fed into the build. If you want to customize this logic, it is here. |
Beta Was this translation helpful? Give feedback.
-
Describe the Bug
I tried building .NET 8 preview 4 from source by cloning the
dotnet/dotnet
repository and checking out the tagv8.0.0-preview.4.23259.5
.The first time, I tried building using the command:
VERBOSE=1 ./build.sh --clean-while-building --with-sdk ./previously-built-dotnet -- /v:n /p:SkipPortableRuntimeBuild=true /p:LogVerbosity=n /p:MinimalConsoleLogOutput=false /p:ContinueOnPrebuiltBaselineError=true
Which resulted in:
Full log file: https://drive.google.com/file/d/1CpGIlq1bDBVHr1onCCrpKCDPasZn3RBW/view?usp=sharing
Then, on a clean clone of the same repo and tag, I tried adding the
--online
flag to the same command as above, which resulted in a failed build a bit later in the process:Full log file: https://drive.google.com/file/d/1XPrtvpec-eI8uj8oJ3J2V6Qjj_BS7Pzi/view?usp=sharing
Steps to Reproduce
lxc launch ubuntu:23.10
sudo apt update && sudo apt upgrade
sudo apt install dotnet-sdk-8.0 dotnet-sdk-8.0-source-built-artifacts
git clone https://github.com/dotnet/dotnet && cd dotnet
git checkout v8.0.0-preview.4.23259.5
ln -s /usr/lib/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.8.0.100.ubuntu.23.10-x64.tar.gz ./prereqs/packages/archive/
from the repo rootcp -RLp /usr/lib/dotnet/ ./previously-built-dotnet
from the repo root./build.sh
commands described aboveOther Information
dotnet-sdk-8.0-source-built-artifacts
includes the pre-built binaries from the bootstrap package, which are placed under/usr/lib/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.8.0.100.ubuntu.23.10-x64.tar.gz
cc @MichaelSimons
Beta Was this translation helpful? Give feedback.
All reactions