Re: [Mono-dev] Update on Build System
To be clear, you *can* build the Mono runtime using Visual Studio (Mono for Windows is built that way, the class libs are taken from the Mac release). -- Alex From: mig...@xamarin.com Date: Thu, 9 Apr 2015 16:25:11 -0400 To: cta...@opennetcf.com CC: mono-devel-list@lists.ximian.com Subject: Re: [Mono-dev] Update on Build System Hello, I do not think this work was completed. Miguel On Thu, Apr 9, 2015 at 3:12 PM, Chris Tacke cta...@opennetcf.com wrote: It’s been about a year and thought I’d loop back on this thread since it’s still something I could really use. Are we yet to a point where we can build Mono using the Microsoft compilers only? If so, I can then start looking at modifying those projects to build using the Windows CE compilers. -Chris Tacke From: Miguel de Icaza [mailto:mig...@xamarin.com] Sent: Monday, May 26, 2014 10:23 AM To: Chris Tacke Cc: mono-devel Subject: Re: [Mono-dev] Update on Build System Hello Chris, That is what I am trying to do with this work. There are still a number of problems that I need to address:Installing the resulting binariesSigning (currently we are skipping this)Ensure the binaries produced are identical with Make and msbuildAdd assertions to ensure that flags that we currently ignore are caught, in case we add new features in the futureFix the C# compiler build (currently disabled)Extend this to other components, so we can have the entire setup in a solution.Then we would have something that works. Miguel On Mon, May 26, 2014 at 11:04 AM, Chris Tacke cta...@opennetcf.com wrote:Miguel, This is great news. Are there any plans to update the build system to allow us to compile the runtime itself using Visual Studio (i.e. a Microsoft compiler)? Now before everyone starts with the eye rolling and “why the hell would you want to do that?” questions, let me explain. As of today, we can create applications in C# that will run on Windows and a large array of Linux machines (including Android) but Windows CE has been orphaned. Microsoft is not putting any effort into the Compact Framework, but there are still people developing for Windows CE devices. I’d like to put a last nail in the coffin of the Compact Framework by getting Mono supported on Windows CE so we can all move into using technology from the current decade, not the last one. I don’t see any real path for getting the runtimes to compile for Windows CE for ARM and 586 (not 686, since we have new Intel processors now that are 586 based). There is an old (last touch in 2009) CeGCC project that might be a step, but I was hoping for something a little simpler. I’m up for any suggestions. -Chris Tacke From: mono-devel-list-boun...@lists.ximian.com [mailto:mono-devel-list-boun...@lists.ximian.com] On Behalf Of Miguel de Icaza Sent: Friday, May 23, 2014 9:59 PM To: mono-devel Subject: [Mono-dev] Update on Build System Hey guys, #1 Makefile Build System Update So the clean staged setup has been added to mono/master and in practice most of you will never notice an improvement.Those working on libraries that had cross dependencies will enjoy reliable and working builds. If you make a change in say System, and you type make in mcs/class/System, it will make sure that all the dependencies are properly compiled and the result will be stable. #2 MSBuild setup Based on the work above, I have updated the MSBuild setup, and it is now possible to build most of the managed code with xbuild. This means that you can use this from Visual Studio or Xamarin Studio. Since xbuild does not support passing /keyfile to the C# compiler, I still have to fix about 6-7 assemblies that use -keyfile to be signed.Once that happens, you should be able to build all of Mono's managed code with: xbuild msvc/scripts/net_4_5.sln Currently I disabled generating project files for profiles other than 4.5, just because it is easier to debug this way. I am also a bit sad that our xbuild does not have any support for parallel builds, it would have been a neat hack to make the xbuild-based build system parallel and get this for free. #3 Future Parallel Work - Makefiles I tried to implement parallel builds for mcs/class/Facades, and while it works, it regressed some of the other standard targets that we have (the other -local). I will have to revisit this later. But the principle behind the patch that enabled this could be used for mcs/class and parallelize all the builds as well. We only need to (a) generate the assembly dependencies [1] and (b) we need to figure out the -local target breakage (same stuff I broke for Facades). [1] (which we have from the xbuild work above)Miguel ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list
Re: [Mono-dev] Can't run mono-3.12.X on Windows XP (Mono-devel-list Digest, Vol 120, Issue 4)
FYI, I looked briefly into this and I think the only thing that XP doesn't have is InterlockedCompareExchange64 win api. msvc supports the _InterlockedCompareExchange64 intrinsic we could probably use instead, but I couldn't test it since the runtime wouldn't build for me in VS when I tried. I agree that XP is an EOL platform and we shouldn't invest any time in it (but it'd be pretty funny nonetheless if I could run asp.net 5 on a decades old OS *g*). -- Alex Date: Thu, 9 Apr 2015 21:43:44 +0100 From: direct...@apebox.org To: mono-devel-list@lists.ximian.com Subject: Re: [Mono-dev] Can't run mono-3.12.X on Windows XP (Mono-devel-list Digest, Vol 120, Issue 4) On 09/04/15 18:48, Keedi Kim wrote: Hi, guys. I tried recent version of Mono (3.12.X) on Windows XP machine. I've installed Visual C++ 2013 (x86) redistributable, then installed Mono. But every mono related executables are failed to run. The error message was: mono.exe is not a valid win32 application I checked download page ( http://download.mono-project.com/archive/ ) and installed previous older version which is mono-3.2.3-gtksharp-2.12.11-win32-0.exe then all mono binaries are executed well. I wonder if the mono supports Windows XP. Are there extra works to use recent version of mono in XP machine? So... The short version is it doesn't work with 3.12+, which are built with Visual Studio 2013. I tried building with parameters to enable legacy XP support, and it should *install* on XP now, with the 4.0.0 alpha release - but it will fail to work, due to needing commands in kernel32.dll (one of the most fundamental Windows components) which are only available in Vista or above. XP stopped having any support whatsoever from Microsoft more than a year ago, and is now a massive security risk for anyone running it - I don't want to invest any more time than I already have on XP support, until management tells me otherwise - at which point it's the runtime team's problem to stop relying on basic kernel32.dll functionality. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Can't run mono-3.12.X on Windows XP
Hi, guys. I tried recent version of Mono (3.12.X) on Windows XP machine. I've installed Visual C++ 2013 (x86) redistributable, then installed Mono. But every mono related executables are failed to run. The error message was: mono.exe is not a valid win32 application I checked download page ( http://download.mono-project.com/archive/ ) and installed previous older version which is mono-3.2.3-gtksharp-2.12.11-win32-0.exe then all mono binaries are executed well. I wonder if the mono supports Windows XP. Are there extra works to use recent version of mono in XP machine? Any help would be appreciated. Thanks, Best Regards, Keedi Kim http://keedi.pe.kr ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Update on Build System
It’s been about a year and thought I’d loop back on this thread since it’s still something I could really use. Are we yet to a point where we can build Mono using the Microsoft compilers only? If so, I can then start looking at modifying those projects to build using the Windows CE compilers. -Chris Tacke From: Miguel de Icaza [mailto:mig...@xamarin.com] Sent: Monday, May 26, 2014 10:23 AM To: Chris Tacke Cc: mono-devel Subject: Re: [Mono-dev] Update on Build System Hello Chris, That is what I am trying to do with this work. There are still a number of problems that I need to address: * Installing the resulting binaries * Signing (currently we are skipping this) * Ensure the binaries produced are identical with Make and msbuild * Add assertions to ensure that flags that we currently ignore are caught, in case we add new features in the future * Fix the C# compiler build (currently disabled) * Extend this to other components, so we can have the entire setup in a solution. Then we would have something that works. Miguel On Mon, May 26, 2014 at 11:04 AM, Chris Tacke cta...@opennetcf.commailto:cta...@opennetcf.com wrote: Miguel, This is great news. Are there any plans to update the build system to allow us to compile the runtime itself using Visual Studio (i.e. a Microsoft compiler)? Now before everyone starts with the eye rolling and “why the hell would you want to do that?” questions, let me explain. As of today, we can create applications in C# that will run on Windows and a large array of Linux machines (including Android) but Windows CE has been orphaned. Microsoft is not putting any effort into the Compact Framework, but there are still people developing for Windows CE devices. I’d like to put a last nail in the coffin of the Compact Framework by getting Mono supported on Windows CE so we can all move into using technology from the current decade, not the last one. I don’t see any real path for getting the runtimes to compile for Windows CE for ARM and 586 (not 686, since we have new Intel processors now that are 586 based). There is an old (last touch in 2009) CeGCC project that might be a step, but I was hoping for something a little simpler. I’m up for any suggestions. -Chris Tacke From: mono-devel-list-boun...@lists.ximian.commailto:mono-devel-list-boun...@lists.ximian.com [mailto:mono-devel-list-boun...@lists.ximian.commailto:mono-devel-list-boun...@lists.ximian.com] On Behalf Of Miguel de Icaza Sent: Friday, May 23, 2014 9:59 PM To: mono-devel Subject: [Mono-dev] Update on Build System Hey guys, #1 Makefile Build System Update So the clean staged setup has been added to mono/master and in practice most of you will never notice an improvement. Those working on libraries that had cross dependencies will enjoy reliable and working builds. If you make a change in say System, and you type make in mcs/class/System, it will make sure that all the dependencies are properly compiled and the result will be stable. #2 MSBuild setup Based on the work above, I have updated the MSBuild setup, and it is now possible to build most of the managed code with xbuild. This means that you can use this from Visual Studio or Xamarin Studio. Since xbuild does not support passing /keyfile to the C# compiler, I still have to fix about 6-7 assemblies that use -keyfile to be signed. Once that happens, you should be able to build all of Mono's managed code with: xbuild msvc/scripts/net_4_5.sln Currently I disabled generating project files for profiles other than 4.5, just because it is easier to debug this way. I am also a bit sad that our xbuild does not have any support for parallel builds, it would have been a neat hack to make the xbuild-based build system parallel and get this for free. #3 Future Parallel Work - Makefiles I tried to implement parallel builds for mcs/class/Facades, and while it works, it regressed some of the other standard targets that we have (the other -local). I will have to revisit this later. But the principle behind the patch that enabled this could be used for mcs/class and parallelize all the builds as well. We only need to (a) generate the assembly dependencies [1] and (b) we need to figure out the -local target breakage (same stuff I broke for Facades). [1] (which we have from the xbuild work above) Miguel ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Update on Build System
Hello, I do not think this work was completed. Miguel On Thu, Apr 9, 2015 at 3:12 PM, Chris Tacke cta...@opennetcf.com wrote: It’s been about a year and thought I’d loop back on this thread since it’s still something I could really use. Are we yet to a point where we can build Mono using the Microsoft compilers only? If so, I can then start looking at modifying those projects to build using the Windows CE compilers. -Chris Tacke *From:* Miguel de Icaza [mailto:mig...@xamarin.com] *Sent:* Monday, May 26, 2014 10:23 AM *To:* Chris Tacke *Cc:* mono-devel *Subject:* Re: [Mono-dev] Update on Build System Hello Chris, That is what I am trying to do with this work. There are still a number of problems that I need to address: - Installing the resulting binaries - Signing (currently we are skipping this) - Ensure the binaries produced are identical with Make and msbuild - Add assertions to ensure that flags that we currently ignore are caught, in case we add new features in the future - Fix the C# compiler build (currently disabled) - Extend this to other components, so we can have the entire setup in a solution. Then we would have something that works. Miguel On Mon, May 26, 2014 at 11:04 AM, Chris Tacke cta...@opennetcf.com wrote: Miguel, This is great news. Are there any plans to update the build system to allow us to compile the runtime itself using Visual Studio (i.e. a Microsoft compiler)? Now before everyone starts with the eye rolling and “why the hell would you want to do that?” questions, let me explain. As of today, we can create applications in C# that will run on Windows and a large array of Linux machines (including Android) but Windows CE has been orphaned. Microsoft is not putting any effort into the Compact Framework, but there are still people developing for Windows CE devices. I’d like to put a last nail in the coffin of the Compact Framework by getting Mono supported on Windows CE so we can all move into using technology from the current decade, not the last one. I don’t see any real path for getting the runtimes to compile for Windows CE for ARM and 586 (not 686, since we have new Intel processors now that are 586 based). There is an old (last touch in 2009) CeGCC project that might be a step, but I was hoping for something a little simpler. I’m up for any suggestions. -Chris Tacke *From:* mono-devel-list-boun...@lists.ximian.com [mailto: mono-devel-list-boun...@lists.ximian.com] *On Behalf Of *Miguel de Icaza *Sent:* Friday, May 23, 2014 9:59 PM *To:* mono-devel *Subject:* [Mono-dev] Update on Build System Hey guys, #1 Makefile Build System Update So the clean staged setup has been added to mono/master and in practice most of you will never notice an improvement. Those working on libraries that had cross dependencies will enjoy reliable and working builds. If you make a change in say System, and you type make in mcs/class/System, it will make sure that all the dependencies are properly compiled and the result will be stable. #2 MSBuild setup Based on the work above, I have updated the MSBuild setup, and it is now possible to build most of the managed code with xbuild. This means that you can use this from Visual Studio or Xamarin Studio. Since xbuild does not support passing /keyfile to the C# compiler, I still have to fix about 6-7 assemblies that use -keyfile to be signed. Once that happens, you should be able to build all of Mono's managed code with: xbuild msvc/scripts/net_4_5.sln Currently I disabled generating project files for profiles other than 4.5, just because it is easier to debug this way. I am also a bit sad that our xbuild does not have any support for parallel builds, it would have been a neat hack to make the xbuild-based build system parallel and get this for free. #3 Future Parallel Work - Makefiles I tried to implement parallel builds for mcs/class/Facades, and while it works, it regressed some of the other standard targets that we have (the other -local). I will have to revisit this later. But the principle behind the patch that enabled this could be used for mcs/class and parallelize all the builds as well. We only need to (a) generate the assembly dependencies [1] and (b) we need to figure out the -local target breakage (same stuff I broke for Facades). [1] (which we have from the xbuild work above) Miguel ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Can't run mono-3.12.X on Windows XP (Mono-devel-list Digest, Vol 120, Issue 4)
On 09/04/15 18:48, Keedi Kim wrote: Hi, guys. I tried recent version of Mono (3.12.X) on Windows XP machine. I've installed Visual C++ 2013 (x86) redistributable, then installed Mono. But every mono related executables are failed to run. The error message was: mono.exe is not a valid win32 application I checked download page ( http://download.mono-project.com/archive/ ) and installed previous older version which is mono-3.2.3-gtksharp-2.12.11-win32-0.exe then all mono binaries are executed well. I wonder if the mono supports Windows XP. Are there extra works to use recent version of mono in XP machine? So... The short version is it doesn't work with 3.12+, which are built with Visual Studio 2013. I tried building with parameters to enable legacy XP support, and it should *install* on XP now, with the 4.0.0 alpha release - but it will fail to work, due to needing commands in kernel32.dll (one of the most fundamental Windows components) which are only available in Vista or above. XP stopped having any support whatsoever from Microsoft more than a year ago, and is now a massive security risk for anyone running it - I don't want to invest any more time than I already have on XP support, until management tells me otherwise - at which point it's the runtime team's problem to stop relying on basic kernel32.dll functionality. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list