No msbuild in mono?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

No msbuild in mono?

Agis Theodoropoulos
I am running 6.6 RELEASE on amd64 and I have installed the
mono-5.20.1.34 port.

It seems that there is no msbuild executable in it.

Is this expected?
If so, what is the expected way of managing packages?

On a related note, the nuget-5.0.2.5988 port looks for msbuild but finds
nothing:

$ nuget restore
MSBuild auto-detection: using msbuild version '' from '/usr/local/bin'.
Error parsing solution file at /home/agis/work/csharp/sandbox/hello.sln:
Invalid Image

Reply | Threaded
Open this post in threaded view
|

Re: No msbuild in mono?

Thomas Frohwein-2
[...]
> It seems that there is no msbuild executable in it.
>
> Is this expected?

In my opinion it's a big mess that mono deprecated xbuild without supplying a working msbuild with mono. That's probably because of Microsoft at the helm trying to aggressively merge mono with .NET core.

I used to have a draft for msbuild that worked in *some* of its uses (but not for building newer fsharp for example). This was also a big mess because it needed a big nuget data package > 1G. The package that I manually supplied went out of date and it looks like upstream change its distfiles (the SHA256 and size didn't match anymore).

If you want to take a look at the portability mess, here is where the upstream work happens:

https://github.com/mono/msbuild

And here is a (very crude) draft of mine when it worked, from before the distfiles got switched:

https://thfr.info/cgi-bin/cvsweb/mystuff/devel/msbuild/

So it probably won't work, but maybe it can serve as a starting point if someone wants to work on this.

> If so, what is the expected way of managing packages?

There is no working package manager for .NET. You can still build (mostly older) solutions that don't require MSBuild, and run assemblies that don't require dotnet runtime.

>
> On a related note, the nuget-5.0.2.5988 port looks for msbuild but finds
> nothing:
>
> $ nuget restore
> MSBuild auto-detection: using msbuild version '' from '/usr/local/bin'.
> Error parsing solution file at /home/agis/work/csharp/sandbox/hello.sln:
> Invalid Image

The uses for nuget are very limited at this point. This is from when porting msbuild looked more doable 9 months ago.


--
 
[hidden email]

PGP Public Key: https://pgp.mit.edu/pks/lookup?op=get&search=0xE1A22D58D20C6D22