On 05/02/2018 02:13 AM, Russell Haley wrote:
On Wed, Apr 25, 2018 at 7:21 AM, Russell Haley <[email protected]
<mailto:[email protected]>> wrote:
Hi!
Sorry for the top post. I'm really glad to see someone pick this up
as I have dropped the ball. I'll try to send you some information
later. Here is a description of the current status of where the
porting is at:
https://github.com/dotnet/corefx/issues/1626#issuecomment-378627311
<https://github.com/dotnet/corefx/issues/1626#issuecomment-378627311>
I am helping another person with his SGOC on RTEMS so I will not be
able to give my full attention to you but will help where I can. It
will be important to push the Linux ports of dotnetcore 1 forward
for your success.
Hello Mateus,
So I'm not sure how much you know yet about the state of DotNet Core on
FreeBSD. In order to build dotnet you need to create two "parts" of the
each of the two Libraries CoreFX and CoreCLR. The first part is the
native components that interact with the operating system, and the
second half are the "managed" dotnet parts that interact with the native
components (as well as the rest of the framework). The problem with
FreeBSD is support was never kept up in the original port of DotNet Core
1. The managed components for DotNet Core 2 can only be built using a
compiler written in one of the three DotNet variants (.Net framework,
DotNet Core 1 or DotNet Core 2). There was at one point support for
building DotNet in Mono, but Microsoft isn't divulging any of that
information and is not interested in following that path.
SO, a Microsoft Developer named Tomas Wienfrut took the project on and
was able to get DotNet Core 2 building for FreeBSD.Tomas, was able to
cross-build both portions on Linux. I have been able to build the
Native parts on FreeBSD without issue. I was almost successful building
the Managed components Windows (for FreeBSD) but ran out of steam and I
haven't used .Net for about a year now so my focus is learning new
things. The problem with the above build methods is they are slow and
messy and required copying things back to FreeBSD from another OS. It
wasn't very manageable.
In comes David Naylor - who is pretty much single handedley propping up
Mono on FreeBSD - with a binary Linux port of Dot Net Core 1 and all the
build components that we need for DotNet Core 2!
The important parts that you will need are still only patches. Someone
needs to build and verify his patches so he can commit them. He has
created a tracking ticket in the phabricator review tool here:
https://reviews.freebsd.org/D12440
The important patches for you are here:
https://reviews.freebsd.org/D14135 - msbuild
https://reviews.freebsd.org/D13870 - linux binary dotnet core 1
I have patched a ports tree and run the linux dotnet core 1 binary, but
have not completed the process of verifying it works. I just gave it
another shot and there is still a missing package (I commented on the
D13870 ticket).
SO, should you choose to move forward with porting DotNet Core 2, you
have two choices: 1) continue Davids work to get the Linux DotNet
binaries working, or 2) investigate building with Mono - which is a path
untaken so far.
If you wish to continue with the Linux binaries, someone should probably
test the patches that David has provided so we can get the
pre-requisites in the ports tree. After that, the following build
instructions should still be relevant minus any -skipcrossgen flags:
https://github.com/dotnet/corefx/wiki/Building-.NET-Core--2.x-on-FreeBSD
And that should be it right? ha ha. No. You have a long road of testing
ahead of you.
I am thrilled to see this work move forward. If I can provide any
further assistance, please let me know. I can't wait to see PowerShell
running on FreeBSD! Although I am rather fond of fish on GhostBSD now.
Cheers!
Russ
I will write back soon with more details but didn't want your last
message to go unanswered.
Cheers
Russ
Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
Original Message
From: Mateus Rodrigues de Morais
Sent: Tuesday, April 24, 2018 4:20 PM
To: [email protected]
Subject: [GSoC'18] Porting Microsoft's CoreCLR, CoreFX, and
PowerShell to FreeBSD
Hello all,
My name is Mateus and I’m an undergraduate at the Federal University
of Rio Grande do Norte, in Natal, Brazil, studying Computer
Engineering. I’m currently participating in the 2018 Google Summer
of Code and my project is to port the CoreCLR, CoreFX and,
ultimately, PowerShell, to the FreeBSD platform.
I’m expecting to interact quite a bit with you guys here on this
list so, just introducing myself. Also, I’m happy to receive
suggestions from you all, if you have any.
Best regards,
Mateus Rodrigues de Morais.
_______________________________________________
[email protected] <mailto:[email protected]> mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
<https://lists.freebsd.org/mailman/listinfo/freebsd-mono>
To unsubscribe, send any mail to
"[email protected]
<mailto:[email protected]>"
Hi Russell,
Thank you for updating me on the current progress of this effort. It
sure is a challenge, from what I can see.
Right now, I managed to build CoreCLR on FreeBSD - resulting in a
'corerun' executable - and am now on the process of building the native
parts of CoreFX on FreeBSD, but still getting compile errors along the
process. I had not seen the Wiki page you authored and linked here, I'll
check if it helps me succeed in building FX. However, I did manage to
build them on Linux targeting FreeBSD, but haven't yet tested whether
they work. I'm working on the source out of the release/2.0 branch.
Anyway, I'll read through everything you sent again and try moving the
needle on this one.
Best regards,
--
Mateus Rodrigues de Morais
mateus.tech
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-mono
To unsubscribe, send any mail to "[email protected]"