Fail to copy core-sdk files in ubuntu.16.04-arm build
See original GitHub issueSteps to reproduce
Build Command:
./build.sh -c Release /p:CLIBUILD_SKIP_TESTS=true /p:DISABLE_CROSSGEN=1 /p:Rid=ubuntu.16.04-arm /p:IncludeAdditionalSharedFrameworks=false
Related patch:
--- a/build/Branding.props
+++ b/build/Branding.props
@@ -12,7 +12,7 @@
<SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
<SharedFrameworkNugetName>$(SharedFrameworkName)</SharedFrameworkNugetName>
- <ProductMonikerRid Condition=" '$(Rid)' == 'ubuntu.16.04-x64' Or '$(Rid)' == 'fedora.23-x64' Or '$(Rid)' == 'opensuse.13.2-x64' ">$(Rid)</ProductMonikerRid>
+ <ProductMonikerRid Condition=" '$(Rid)' == 'ubuntu.16.04-x64' Or '$(Rid)' == 'fedora.23-x64' Or '$(Rid)' == 'opensuse.13.2-x64' Or '$(Rid)' == 'ubuntu.16.04-arm'">$(Rid)</ProductMonikerRid>
<ProductMonikerRid Condition=" '$(ProductMonikerRid)' == '' ">$(OSName)-$(Architecture)</ProductMonikerRid>
<ArtifactNameSdk>dotnet-sdk</ArtifactNameSdk>
--- a/build/BundledRuntimes.props
+++ b/build/BundledRuntimes.props
@@ -53,21 +53,21 @@
</_DownloadAndExtractItem>
<_DownloadAndExtractItem Include="DownloadedSharedFrameworkInstallerFile"
- Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedSharedFrameworkInstallerFile)') And '$(InstallerExtension)' != ''">
+ Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedSharedFrameworkInstallerFile)') And '$(InstallerExtension)' != '' And '$(IsCross)' == 'False'">
<Url>$(CoreSetupInstallerBlobRootUrl)/$(SharedFrameworkVersion)/$(DownloadedSharedFrameworkInstallerFileName)</Url>
<DownloadFileName>$(DownloadedSharedFrameworkInstallerFile)</DownloadFileName>
<ExtractDestination></ExtractDestination>
</_DownloadAndExtractItem>
<_DownloadAndExtractItem Include="DownloadedSharedHostInstallerFile"
- Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedSharedHostInstallerFile)') And '$(InstallerExtension)' != ''">
+ Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedSharedHostInstallerFile)') And '$(InstallerExtension)' != '' And '$(IsCross)' == 'False'">
<Url>$(CoreSetupInstallerBlobRootUrl)/$(SharedHostVersion)/$(DownloadedSharedHostInstallerFileName)</Url>
<DownloadFileName>$(DownloadedSharedHostInstallerFile)</DownloadFileName>
<ExtractDestintation></ExtractDestintation>
</_DownloadAndExtractItem>
<_DownloadAndExtractItem Include="DownloadedHostFxrInstallerFile"
- Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedHostFxrInstallerFile)') And '$(InstallerExtension)' != ''">
+ Condition="'$(SkipBuildingInstallers)' != 'true' And !Exists('$(DownloadedHostFxrInstallerFile)') And '$(InstallerExtension)' != '' And '$(IsCross)' == 'False'">
<Url>$(CoreSetupInstallerBlobRootUrl)/$(HostFxrVersion)/$(DownloadedHostFxrInstallerFileName)</Url>
<DownloadFileName>$(DownloadedHostFxrInstallerFile)</DownloadFileName>
<ExtractDestintation></ExtractDestintation>
--- a/build/DependencyVersions.props
+++ b/build/DependencyVersions.props
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
- <CLI_SharedFrameworkVersion>2.0.0-beta-001509-00</CLI_SharedFrameworkVersion>
+ <CLI_SharedFrameworkVersion>2.0.0-beta-001650-00</CLI_SharedFrameworkVersion>^M
<CLI_MSBuild_Version>15.2.0-preview-000002-01</CLI_MSBuild_Version>
<CLI_Roslyn_Version>2.0.0-rc4-61325-08</CLI_Roslyn_Version>
<CLI_NETSDK_Version>1.1.0-alpha-20170209-1</CLI_NETSDK_Version>
--- a/build/Prepare.targets
+++ b/build/Prepare.targets
@@ -26,10 +26,14 @@
<OverwriteExtractionDestination Condition="'$(OverwriteExtractionDestination)' == ''">True</OverwriteExtractionDestination>
</PropertyGroup>
- <DownloadFile Condition=" '@(_DownloadAndExtractItem)' != '' "
+ <DownloadFile Condition=" '@(_DownloadAndExtractItem)' != '' And '$(IsCross)' == 'False'"
Uri="%(_DownloadAndExtractItem.Url)"
DestinationPath="%(_DownloadAndExtractItem.DownloadFileName)" />
+ <Copy Condition=" '$(IsCross)' == 'True' "
+ SourceFiles="$(RepoRoot)/testsource/$(CombinedFrameworkHostCompressedFileName)"
+ DestinationFiles="$(CombinedSharedHostAndFrameworkArchive)" />
+
<ZipFileExtractToDirectory Condition=" '%(_DownloadAndExtractItem.ExtractDestination)' != '' AND '$(OSName)' == 'win' "
SourceArchive="%(_DownloadAndExtractItem.DownloadFileName)"
DestinationDirectory="%(_DownloadAndExtractItem.ExtractDestination)"
--- a/build/Stage0.props
+++ b/build/Stage0.props
@@ -5,6 +5,8 @@
<DotnetStage0>$(Stage0Directory)/dotnet$(ExeExtension)</DotnetStage0>
<IsDesktopAvailable>False</IsDesktopAvailable>
<IsDesktopAvailable Condition=" '$(OSName)' == 'win' ">True</IsDesktopAvailable>
+ <IsCross>False</IsCross>
+ <IsCross Condition=" !$(Rid.Contains('$(OSName)')) Or !$(Rid.Contains('$(Architecture)')) ">True</IsCross>
<CoreCLRRid>$(Rid)</CoreCLRRid>
<CoreCLRRid Condition=" '$(OSName)' == 'win' ">win7-$(Architecture)</CoreCLRRid>
<CoreCLRRid Condition=" '$(OSName)' == 'osx' ">osx.10.10-x64</CoreCLRRid>
Expected behavior
Build successful
Actual behavior
Occurred the following errors:
"/home/jyoung/git/dotnet/cli-jy/build.proj" (default target) (1) ->
(CompileCLI target) ->
/home/jyoung/git/dotnet/cli-jy/build/Compile.targets(50,7): error MSB3680: The source file "/home/jyoung/git/dotnet/cli-jy/artifacts/ubuntu.16.04-arm/stage2/sdk/2.0.0-alpha-005111/System.ComponentModel.Primitives.dll" does not exist. [/home/jyoung/git/dotnet/cli-jy/build.proj]
/home/jyoung/git/dotnet/cli-jy/build/Compile.targets(50,7): error MSB3680: The source file "/home/jyoung/git/dotnet/cli-jy/artifacts/ubuntu.16.04-arm/stage2/sdk/2.0.0-alpha-005111/System.Collections.Specialized.dll" does not exist. [/home/jyoung/git/dotnet/cli-jy/build.proj]
/home/jyoung/git/dotnet/cli-jy/build/Compile.targets(50,7): error MSB3680: The source file "/home/jyoung/git/dotnet/cli-jy/artifacts/ubuntu.16.04-arm/stage2/sdk/2.0.0-alpha-005111/System.Collections.NonGeneric.dll" does not exist. [/home/jyoung/git/dotnet/cli-jy/build.proj]
/home/jyoung/git/dotnet/cli-jy/build/Compile.targets(50,7): error MSB3680: The source file "/home/jyoung/git/dotnet/cli-jy/artifacts/ubuntu.16.04-arm/stage2/sdk/2.0.0-alpha-005111/System.Private.DataContractSerialization.dll" does not exist. [/home/jyoung/git/dotnet/cli-jy/build.proj]
I’m trying to build cli project for Ubuntu.16.04-arm. I already had a tarball for Ubuntu.16.04-arm but there wasn’t in Azure server so I added some patch to copy the local tarball for testing. The copy and decompression worked fine, but fails to copy the core-sdk dlls. Related code:
in build/Compile.targets
<!-- copy core sdk -->
<Copy SourceFiles="@(MSBuildImportsContent)"
DestinationFolder="$(SdkOutputDirectory)/%(RecursiveDir)" />
What does that MSBuildImportsContent
mean? When I look at the Ubuntu.14.04-x64 log, it looks like there are not any files to copy at that stage, but I can not find any part of it that copies files to SdkOutputDirectory
.
Issue Analytics
- State:
- Created 7 years ago
- Comments:15 (14 by maintainers)
Top Results From Across the Web
How to copy files from root directory of a failed ubuntu drive
Issue starts when I try to copy anything that's not under /home/user directory. I am trying to copy certain files from /var/lib but...
Read more >petalinux 2019.2, ubuntu 16.04.6 failure to copy files to /tftpboot
While copying files to /tftpboot, the build terminates early due to one of the 'files' being created as a folder by Petalinux build....
Read more >Troubleshoot directory path error in COPY command ...
I am using COPY command in my docker file on top of ubuntu 16.04. I am getting error as no such file or...
Read more >ARM/RaspberryPi
Create a partition with pi firmware/bootloader files; Compile U-boot; Copy the device tree blob; Copy the ISO contents to the FAT partition ...
Read more >Unable to copy and paste between Mac and Ubuntu Linux ...
I run macOS 12.4 Monterey and installed Parallels 17.1.2 cannot copy and paste between MacOS and Kali machine, using Command-C and Control-V or ......
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Finally, I got below results!
Build Command: (in jyoung:arm/build_ubuntu_arm branch)
I need to change sdk to get upper results, my changes are like below:
I’m not clear where lockFile.Libraries come from and why the Type is null in arm target. Who can review this?
lockFile.Libraries is defined in https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Core/NuGet.ProjectModel/LockFile/LockFile.cs#L24