Dynamo

Dynamo is a open source implementation of a Graph Based Visual Programming Interface that’s being advanced by Autodesk.  It’s very similar to Grasshopper (which is pretty tightly integrated with Rhino).

I have followed below link to build Dynamo on Linux:

https://github.com/DynamoDS/Dynamo/wiki/Dynamo-on-Linux,-Mac

Here, I will discuss about my struggles and fruitful solution eventually 🙂

Initially, I was having mono version 3.2.8.0

Later, I installed 5.4.1.6 but I think changing the version won’t solve any problem. Still I did it using:

<

p class=”default prettyprint prettyprinted”>apt-key adv --keyserver pgp.mit.edu --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

echo "deb http://download.mono-project.com/repo/debian wheezy main" > /etc/apt/sources.list.d/mono-xamarin.list

apt-get update

apt-get install mono-devel

                                       ***************************************************

Now, on running:

xbuild /p:Configuration=Release src/Dynamo.Mono.sln

I faced an error:

MSBUILD: error MSBUILD0000: Project file ‘src/Dynamo.Mono.sln’ not found.

Then, I cloned the repository with x.sln file in it.

git clone  https://github.com/DynamoDS/Dynamo

You can get similar error as below mentioned if the data in Dynamo.Mono.sln file is not appropriate:

Dynamo.Mono.sln: Invalid solution configuration and platform: “Release|Any CPU”

Solution file error MSB5010: No file format header found.

Now, again on running above command, I got another error:

ShapewaysClient.cs(1,7): error CS0246: The type or namespace name ‘Newtonsoft’ could not be found (are you missing a using directive or an assembly reference?)

ShapewaysClient.cs(2,7): error CS0246: The type or namespace name ‘RestSharp’ could not be found (are you missing a using directive or an assembly reference?)  

almost 8 erros

For solving this, I tried installing NuGet Packages:

 #sudo apt install nuget

After installing Newtonsoft.Json:
 #nuget install Newtonsoft.Json

Though it didn’t solve my problem completely, but now there were 4 errors instead of 8.

I even tried installing zip file for Newtonsoft from here:  https://github.com/JamesNK/Newtonsoft.Json/releases

But nothing helped.

Also to upgrade the version of Nuget, one can use:

nuget update -self

To check the version of nuget:

nuget

Later, I tried:

mcs /reference:Newtonsoft.Json.dll /reference:RestSharp.dll ShapewaysClient.cs

to solve the error. But this was also not the one I am looking for.

Now, the working solution is:

nuget restore

After this, I compiled using mono Program.exe

I again got some errors of dependencies, it got solved after insatlling them. Still I was getting errors: https://hastebin.com/avokifahuw.pas

I have read that it’s some package issue and after few searches I get to know that:
All versions of System.Net.Http are broken on Mono because they use private API available in .NET assemblies only. To workaround that Mono has to disable loading such assemblies and use always Mono’s ones.
So, I fixed it by deleting System.Net.Http.dll from bin folder.
Now, on compiling, I was getting the result.
mono Program.exe 
2.0.0.2821

I will update the blog soon with the solution 🙂

Stay tuned 😉

 

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s