Date: Wed, 2 May 2018 14:41:01 -0300 From: Mateus Rodrigues de Morais <mateus@mateus.tech> To: Russell Haley <russ.haley@gmail.com>, mono@freebsd.org Subject: Re: [GSoC'18] Porting Microsoft's CoreCLR, CoreFX, and PowerShell to FreeBSD Message-ID: <8053a33c-619f-1039-a1b1-e1932a8697b7@mateus.tech> In-Reply-To: <CABx9NuQd_AEvU6vx93nhLKCmBKe_dyJBjj=8Ob1%2BiTabHva6Wg@mail.gmail.com> References: <CP2P152MB1124E94F77504D261583B41DCE880@CP2P152MB1124.LAMP152.PROD.OUTLOOK.COM> <20180425142141.7192660.44401.46097@gmail.com> <CABx9NuQd_AEvU6vx93nhLKCmBKe_dyJBjj=8Ob1%2BiTabHva6Wg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 05/02/2018 02:13 AM, Russell Haley wrote: > > > On Wed, Apr 25, 2018 at 7:21 AM, Russell Haley <russ.haley@gmail.com > <mailto:russ.haley@gmail.com>> 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: mono@FreeBSD.org > 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. > _______________________________________________ > freebsd-mono@freebsd.org <mailto:freebsd-mono@freebsd.org> mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-mono > <https://lists.freebsd.org/mailman/listinfo/freebsd-mono> > To unsubscribe, send any mail to > "freebsd-mono-unsubscribe@freebsd.org > <mailto:freebsd-mono-unsubscribe@freebsd.org>" > > 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8053a33c-619f-1039-a1b1-e1932a8697b7>