Building Dynamo from source in Visual Studio

Thanks @Konrad_K_Sobon I’ll see if your article answers any of my questions above

Pinging @Michael_Kirschner2 about your registry issue…

@Thomas_Mahon - Yes, “DynamoRevit.2013.sln” is correct solution to build from. D4R does not produce an exe. Follow the instructions on the DynamoRevit readme about creating a addin.

Essentially, you have 2 options for building:

  1. Build Dynamo Core first, then D4R.
  2. If you are building from master of Revit, you can run restorepackages.bat with admin privileges. You will not need to build Dynamo Core.

Regarding the addin, you can:

  • If you built Dynamo Core, run “DynamoAddInGenerator.exe” from the bin folder that gets generated.
  • Or you can make your own addin and place it in a location that Revit looks for addins (more instructions on the wiki)

Attached is an example of the addin.

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<RevitAddIns>
<AddIn Type="Application">
<Name>Dynamo For Revit</Name>
<Assembly>"C:\Program Files\Dynamo\Dynamo Revit\1.3\Revit_2017\DynamoRevitVersionSelector.dll"</Assembly>
<AddInId>8D83C886-B739-4ACD-A9DB-1BC78F315B2B</AddInId>
<FullClassName>Dynamo.Applications.VersionLoader</FullClassName>
<VendorId>ADSK</VendorId>
<VendorDescription>Dynamo</VendorDescription>
</AddIn>
</RevitAddIns>
2 Likes

Thanks @Racel_Williams thats very useful info

This is great…but shouldn’t that be somewhere on GitHub / Wiki? I hope it is. :slight_smile:

@Konrad_K_Sobon @Thomas_Mahon - Most of what I said is in the read.me of the DynamoRevit repo.

A few things about the addin generator are not. That might be good to mention there.

If it is unclear, we can update the instructions. Just let me know how you think it can be improved.

Hi @Thomas_Mahon

You will need the following to build Dynamo from source:

-Microsoft Visual Studio 2015
-GitHub for Windows
-Microsoft .NET Framework 4.5.
-Microsoft DirectX (install from %GitHub%\Dynamo\tools\install\Extra\DirectX\DXSETUP.exe)

Here is how you can install it.

Go to https://github.com/DynamoDS/Dynamo and clone the repo,
do the same with https://github.com/DynamoDS/DynamoRevit

  • Download Dynamo master and DynamoRevit 2017 to the same forlder with github desktop.

  • From GitHub Desktop open Dynamo and open the DynamoAll solution in Visual Studio

  • After Dynamo Core is build Run restorepackages.bat inside DynamoRevit.

  • Bulid DynamoRevit 2017

  • Add .addin file to %appdata%\Autodesk\Revit\Addins\2017\ with path: “[Your GitHub Folder]\Dynamo\bin\AnyCPU\Debug\Revit_2017\DynamoRevitVersionSelector.dll”

Hope it helps!

5 Likes

@Thomas_Mahon, @Kulkul 's description is an accurate one. It’s worth mentioning that you are possibly getting the regex error because of Visual Studio 2017. Please download 2015 and it should work just fine. Also, you have to run it in Admin mode since it will attempt to make some changes requiring admin rights.

2 Likes

@Racel_Williams somehow I couldn’t build the Revit2017 branch without first building Revit2018. I am not sure that’s desired behavior but it seems that some of the assemblies now have dependencies on 2018. Can someone check that out?

Thanks @Kulkul and @Konrad_K_Sobon, I’ll follow your steps and see if that resolves the regex issue.

@Konrad_K_Sobon - I just built Revit2017 without having to build Revit2018 first. What errors/warnings are you seeing? And, what step are you having issues with?

We made a few modifications to our build process, but you should be able to build Revit2017 without Revit2018.

(Tip: You might want to try running VS in Admin mode)

always :stuck_out_tongue:

Hey @Thomas_Mahon - I came across the exact issues as you did, but trying to build DynamoCore the other day.
It should be as simple as cloning the repo and clearly documented steps…this clearly isn’t the case.

To get Dynamo (Core at least) to build on Windows 10 and Visual Studio Community 2017, aside from the pre-requisites listed by @Kulkul, you also have to install the .NET 3.5 SDK add-on, search for “Visual Studio Installer” on your PC (comes with VS2017) and then add it from the “Individual components”.
As @Konrad_K_Sobon mentioned, installing Visual Studio 2015 is a good idea, seemed to have resolved some of the issues I was facing in VS2017 as well.

1 Like

Hi @Radu_Gidei thanks for the info! I’ll post my findings on this thread once I compile :+1:

Hi,

I have similar error … and wondering if anyone could guide me

I am using:
-Microsoft Visual Studio 2019
-Microsoft .NET Framework 4.7.2
any help will be appreciated

I managed to solve the error by manually adding a new item to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows

Hello @Michal_Dengusiak, did you use https://developer.dynamobim.org/ as a guide for building this? :slight_smile:

install .net 4.7 sdk - this is not the same as 4.7.2

@Michael_Kirschner2
I already have installed:

no you don’t - 4.7 is not checked, unless you sent the wrong screenshot?

In addition I’ve seen reports that even installing 4.7 framework in some setups still gives you the missing resgen error -which is confusing indeed. In that case I might try installing windows 8 sdk /net framework 3.5 sdk

On my testing with brand new windows 10 vms all that was required was vs 2019, .net 4.7, but of course there are many other variables.