Skip to content
Harald Steinlechner edited this page Oct 11, 2017 · 13 revisions

General Aardvark


... is no longer supported. Use sg.text instead.

DllNotFoundException: Unable to load DLL "DevIL.dll"

Simply call


at the beginning of your program.

Don't mix Paket and packages.config, e.g Visual Studio Nuget Package Manager

Required dependencies cannot be resolved if both paket.dependencies and packages.config exists. Instead, use only paket to add the required packages and remove all packages.config files e.g move <package id="xyz" version="1.0.0" targetFramework="net45" /> from the packages.config to nuget xyz ~> 1.0.0 in the paket.dependencies


Ag.initialize (or something else) fails to load FSharp.Core dll

FileLoadException: Could not load file or assembly 'FSharp.Core, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)


  • add an explicit paket reference FSharp.Core ~> 4.0.0
  • do paket install
  • check if you have wrong assembly binding redirect in your program

Diff Generator does not work

DiffGenerator or Aardvark.Compiler.DomainTypes.MSBuild are common problems when working with There are a few ways to fix the problems.

1) Use Aardvark.Compiler.DomainTypeTool.exe in order go get better error messages.

Here a sub problem might occur:


cracking project: [cracking project] with message: The value "" of the "Project" attribute in element is invalid. Parameter "path" cannot have zero length. C:\Users\may\Documents\Dibit\Source\test\\src\Aardvark.UI.Primitives\Aardvark.UI.Primitives.fsproj at: " at Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(String errorSubCategoryResourceName, IElementLocation elementLocation, String resourceName, Object[] args) at Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(IElementLocation elementLocation, String resourceName, Object arg0, Object arg1, Object arg2, Object arg3) at Microsoft.Build.Evaluation.Evaluator4.ExpandAndLoadImportsFromUnescapedImportExpression(String directoryOfImportingFile, ProjectImportElement importElement, String unescapedExpression, Boolean throwOnFileNotExistsError, List1& imports) at Microsoft.Build.Evaluation.Evaluator4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement) at Microsoft.Build.Evaluation.Evaluator4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement) at Microsoft.Build.Evaluation.Evaluator4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport) at Microsoft.Build.Evaluation.Evaluator4.Evaluate() at Microsoft.Build.Evaluation.Project.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings) at Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings) at Microsoft.Build.Evaluation.Project.Initialize(IDictionary2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings) at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings) at Microsoft.Build.Evaluation.ProjectCollection.LoadProject(String fileName,IDictionary`2 globalProperties, String toolsVersion) at Program.crackProject(String file)"faulted

This is a general indication, that f# tools could not be imported in the fsproj file. In this example it turns out that FSharpTargetsPath is wrong. In this case make sure that f# tools can be found by msbuild.

Clone this wiki locally
You can’t perform that action at this time.