Skip to content

Common Build Errors

MaulingMonkey edited this page Jul 26, 2017 · 2 revisions

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 marked filter=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.