AMD64

From ReactOS Wiki
Jump to: navigation, search

This page describes the current status of the AMD64 port of ReactOS. AMD64 refers to AMD's specifications for a 64-bit extension to the x86 instruction set. It is also known as x64, x86-64 or x86_64 and it is not limited to AMD processors.

The ros-amd64-bringup branch was created on r34699 by Timo Kreuzer. The code is now fully integrated into master.

Status

  • The current code base can be compiled for x64 using the 64 bit development command prompt from VS 2015-2022 (see Building ReactOS)
  • It can also be compiled with x64 GCC and Clang, but it will probably not boot.
  • The main code base (git master) does boot on VirtualBox / KVM. Choose WS2003 x64 as your OS and enable I/O APIC.
  • The buildbot based tests complete only after commenting out some tests, this is WIP.
  • WoW64 is not implemented yet, so you cannot use 32-bit programs.


Completion Status (rough estimates)

completion comment
freeldr 100%
hal 99% Mostly completed, might need some bugfixing here and there.
ntoskrnl/ke 99% Mostly completed, might need some bugfixing here and there.
ntoskrnl/mm 95% Mostly completed, some limitations might exist.
rtl 95% exception handling and unwinding is still slightly buggy.
crt 99% Mostly completed, might need some bugfixing here and there.

Building port

Last updated: 2022/09/04

Currently it's only possible to build ReactOS x86-64 on Windows. Note that MYUSER is a placeholder for your username.
Prerequisites are:

  • MSVC (Visual C++) and Cmake tools for Windows (easiest through Visual Studio component install)
  • RosBE for Windows with add BIN folder to PATH variable active
  • Some form of git to clone the repository


Ⅰ. Clone the ReactOS code to the RosBE source directory.
You are at C:\Users\MYUSER and the command is:

git clone  https://github.com/reactos/reactos/ -b amd64/test_test

Ⅱ. Set these two environment variables (source)

  • M4 with value C:\RosBE\bin\m4.exe
  • BISON_PKGDATADIR with value C:\RosBE\share\bison


Ⅲ. Open x64 Native Tools Command Prompt and configure the build.
The commands for configuring are:

cd \Users\MYUSER\reactos
configure.cmd

Ⅳ. Lastly navigate to the newly created folder of your configuration and start the build
The commands for this are:

cd output-VS-amd64
ninja livecd

If livecd is replaced with bootcd in the last command, an installable medium will be built instead
The output file is usually ~80mb in size

Links

See Also

ReactOS Ports AMD64 Section

ReactOS ports‎
In active development Intel IA-32 (x86) | AMD64 (x64)
In slow development ARM64 (aarch64) | ARM32 (armv7) | NEC PC-98 (x86) | OG Xbox (x86)
Unmaintained OLPC (x86)
Missing ports that Windows has Intel IA-64 (Itanium) | IBM PS/2 MCA (x86) | SGI 320/540 (x86) | DEC Alpha (axp) | MIPS | PowerPC (ppc)
Ideas for new ports Apple TV 1st Gen (x86) | FM Towns (x86) | PlayStation 4 (x64) | Intel SFI (x86)