Common Build Errors - PistonDevelopers/VisualRust GitHub Wiki
MICore and/or MIDebugEngine projects fail to load
These projects are referenced as submodules. Run:
git submodule update --init
The imported project "$(VSToolsPath)\VSSDK\Microsoft.VsSDK.targets" was not found
VisualRust.Templates
may need it's Microsoft.VSSDK.BuildTools
nuget reference updated to latest when building with Visual Studio 2017 instead of Visual Studio 2015 - see https://github.com/PistonDevelopers/VisualRust/pull/286/commits/9a5227f8c9b33dc331ad5ba3b0bcf928de29fa48 or right click the project, select Manage NuGet References...
, select the Installed
or Updates
tab, select Microsoft.VSSDK.BuildTools
, and click the Update
button.
Strong name validation failed. (Exception from HRESULT: 0x8013141A)
You may not have git lfs
installed, or installed it after you cloned the repository (StrongNamer.dll is stored via git lfs)
- Install git lfs per https://git-lfs.github.com/
- Re-clone the repository, or manually re-checkout the relevant files:
rm -rf build lib
git checkout build lib
- Check
.gitattributes
for any other files markedfilter=lfs
- Clean and rebuild the solution
Extension '40c1d2b5-528b-4966-a7b1-1974e3568abe' is of the same or lower version than the installed extension.
Visual Studio is attempting to install the debug .vsix including item templates etc. into Visual Studio's experimental hive. However, you already have the release .vsix installed. Mostly harmless - but can be 'fixed' by going to Tools
, Extensions and Updates...
, and uninstalling Visual Rust
from the Installed > Tools
category. Note that this will of course uninstall everything but the MSBuild extensions (which can be uninstalled via Programs and Features
in Windows itself, under the name Visual Rust for Visual Studio 201x
)
Metadata file '...\RustLexer\Debug\RustLexer.dll' could not be found
The Debug
and Release
solution configurations currently don't build all projects for some reason. Use the Debug.Lab
or Release.Lab
solution configurations instead.
The type 'ProjectItem' is defined in an assembly that is not referenced.
The type or namespace name 'Construction' does not exist in the namespace 'Microsoft.Build' (are you missing an assembly reference?)
You may be trying to build e.g. VS2017 projects with only VS2015 installed (or vicea versa.) Clean Solution
, then open up the Configuration Manager
, and uncheck Build
for all ....2017
projects, in all solution configurations you care about. Failing to clean while the projects are still checked to build may result in more errors - the installers seem to try to build even if their projects aren't selected, depending on what files are around. In a pinch, you may be able to delete your bin
and obj
folders.