Reimi's Blog

ReactOS builds for x64 and ARM!

by on May.15, 2015, under ReactOS, RosBE

Heeey,
some news for all ppl out there who ask again and again about support for something else than x86 architecture support.
This was a big problem in the past due to missing Structured Exception Handling support in GCC at all except our implementation which ONLY works on x86 due to some ASM magic. This was resolved by fully supporting MSVC for a while now.
Structured Exception Handling is a powerful feature of MSVC to handle hardware and software exceptions in the software easily and identically. Without it most exceptions can’t be taken care of at all and RectOS would not even boot to a certain extent.
It’s not new that x64 building was already possible in the past by using MSVC which includes SEH for x86, x64 and ARM, but after some Wine syncs and other commits it broke down for a while then. Recently this was fixed in main trunk and I did the same for rosapps subfolder, too. So you can build ReactOS for x64 again. (With all the stuff from rosapps) Don’t expect it to boot yet! Problem here is the MM which is not really working on x64 builds yet. You can try the apps on a 64 bit Windows though.
And some very new thing… Beginning with r67740 ReactOS builds for ARM, too. Timo Kreuzer made some effort to get it build and succeeded. Some stuff is based on STUBS, but it does generate valid code. Same here… don’t expect it to boot yet. Same MM problems like x64 has and additionally the STUBS which need a real implementation, too. BUUUT it is a big milestone to get it build at all and in theory these apps should start on a jailbroken Windows RT just fine.
So, install or dig out your MSVC today and try it out. Most important feature of these builds does count for x86 too… the best Windows debugger ever works fine: WinDBG. Yes, this is the one MS uses for Windows, too AND you can use it in all it’s glory for ROS debugging ^^

Link of interest: HERE

P.S. I added some support for MSVC into RosBE. If you wanna try out: copy the new scripts from https://svn.reactos.org/svn/project-tools/trunk/RosBE/RosBE-Windows/Root to your RosBE setup and make a new shortcut containing these parameters: PATH\TO\RosBE.cmd vs MSVCVERSION MSVCARCH. Example for VS 2013 bulding a x86 build: PATH\TO\RosBE.cmd vs 12 x86.

Regarding the MSVC Versions:
MSVC++ 12.0 (Visual Studio 2013)
MSVC++ 11.0 (Visual Studio 2012)
MSVC++ 10.0 (Visual Studio 2010)
MSVC++ 9.0 (Visual Studio 2008)
MSVC++ 8.0 (Visual Studio 2005)
MSVC++ 7.1 (Visual Studio 2003)

This is it for today. Have fun with testing. ^^


1 Comment for this entry

Leave a Reply

*

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Donate