Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report for Bug 29809 on
Developer Community or GitHub if you have new
information to add and do not yet see a matching new report.
If the latest results still closely match this report, you can use the
In special cases on GitHub you might also want the comments:
GitHub Markdown with public comments
Apparently, this warning is famous. Tons of people have it, several people say "you just need to ignore it", but it would be great if the underlying problem could be fixed.
I have a solution set up with my PCL project and an iOS project. Using MvvmCross. When building the iOS project, it gives the following warning:
All projects referencing MyProject-PCL.csproj must install nuget package Microsoft.Bcl.Build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317569.
This warning seems harmless, my app runs fine but I'm wondering what is going on to cause it. I have the latest version of all packages, including Microsoft.Bcl.Build, installed into both my PCL and my iOS project.
My PCL is 4.5 - Profile78.
My iOS project has a reference to my PCL project.
Here is a list of nuget packages installed into BOTH my PCL and iOS projects (all are latest versions):
Xamarin Studio 5.9.431 stable, Mac OS X 10.10.3.
I'd like to add that this warning has been present for a very long time, at least a year.
When trying to reproduce this issue, please create a new project that's as close to the configuration I've mentioned here as you can. If you can't reproduce it, I will see if I can create a minimal project that exhibits the issue and upload it for you.
I receive the same error when building my Xamarin Forms Android and iOS projects, using the latest version of everything along with modernhttpclient. Just noticed the issue today.
It seems to either be an xbuild problem or a problem with the Microsoft.Bcl.Build.Tasks.dll.
You can reproduce the problem on the Mac, but not on Windows, using two C# library projects. One referencing the other. You also need to use a type from the referenced project in the other project to force the assembly to be referenced. Then if you add the Microsoft.Bcl.Build NuGet package to both projects you get a warning about the Microsoft.Bcl.Build needing to be referenced by all projects when it already is.
On Windows it works and does not give a warning when compiling in Xamarin Studio.
I put together a simple solution that reproduces the problem on GitHub.
The source code on GitHub also adds some extra logging to the Microsoft.Bcl.Build.targets file.
The problem seems to be that on Windows the correct paths to the referencing project are passed to the BclBuildValidateNugetPackageReferences target:
BclBuildReferencingProject = d:\projects\MSBclBuildTest\MSBclBuildTest\MSBclBuildTest.csproj
BclBuildReferencingProjectConfig = d:\projects\MSBclBuildTest\MSBclBuildTest\packages.config
ReferencedProject = d:\projects\MSBclBuildTest\CommonLibrary\CommonLibrary.csproj
ReferencedProjectPackagesConfig = d:\projects\MSBclBuildTest\CommonLibrary\packages.config
Whilst on the Mac the BclBuildReferencingProject and BclBuildReferencingProjectConfig properties are empty:
ReferencedProject = /projects/MSBclBuildTest/CommonLibrary/CommonLibrary.csproj
ReferencedProjectPackagesConfig = /projects/MSBclBuildTest/CommonLibrary/packages.config
The only workaround for the Mac is to add the SkipValidatePackageReferences property and set it to true in the common project that is being referenced.
If you are building the solution from the command line using xbuild you will need to pass the extra property /p:BuildingInsideVisualStudio=true otherwise the warning about Microsoft.Bcl.Build not being referenced will not be displayed.
This problem may be fixed once the official MSBuild source code has added to Mono.