Building ReactOS on a cloud node instance
If you have a very light computer, with a not-so-powerful processor or with very little RAM, such as a Chromebook, you might want to use a cloud server instance for building ReactOS.
After choosing your cloud provider and setting-up an account, launch an instance with 4GB of RAM, and with an OS of your choice. Then you can connect with SSH to your node instance and follow the steps below, based on the OS you chose.
Setting-up development dependencies
Before being able to build Reactos, you will need to install all the needed development libraries (dependencies), by using the package-manager of your OS.
If you launched a node with Ubuntu or Debian
After first connecting to the instance, run one set of the following commands. On some cloud-providers the default user is root, and on other cloud-providers the default user is non-root. So choose one of these:
If your user is root:
apt update apt upgrade apt install -y build-essential flex bison pkg-config zlib1g-dev git mc screen
Or if your user is not root:
sudo apt update sudo apt upgrade sudo apt install -y build-essential flex bison pkg-config zlib1g-dev git mc screen
If you launched a node with Centos or RedHat or AmazonLinux
After first connecting to the instance, run one set of the following commands. On some cloud-providers the default user is root, and on other cloud-providers the default user is non-root. So choose one of these:
If your user is root:
yum -y update yum install -y openssh-clients git curl mc screen yum groupinstall -y 'Development Tools'
Or if your user is not root:
sudo yum -y update sudo yum install -y openssh-clients git curl mc screen sudo yum groupinstall -y 'Development Tools'
Building ReactOS
For building ReactOS you can choose to create a new user specifically for this, to keep things cleanly separated.
sudo adduser reactos sudo su - reactos -c "script -c /bin/bash /dev/null" # this is needed so you can run 'screen' inside 'su'
Then, as "reactos" non-root user:
cd ~ git clone https://github.com/reactos/reactos.git cd ~ wget http://downloads.sourceforge.net/reactos/RosBE-Unix-2.1.2.tar.bz2 tar -xjf RosBE-Unix-2.1.2.tar.bz2 cd RosBE-Unix-2.1.2/ # Since the following step can take many hours, use "screen" so you the build command can still continue while you logout of SSH screen bash ./RosBE-Builder.sh # when prompted select yes, and then specify the installation path as /home/reactos/rosbe2.1.2
# You can later login again with SSH, and run "screen -r" to resume your previous session, where hopefully the RosBE-Builder finished successfully #screen -r cd ~/rosbe2.1.2 bash ./RosBE.sh
Inside RosBE shell:
cd ~/reactos/ ./configure.sh
The CMake configure step will again take many hours, depending on your selected hardware.
If you get an error message "Connection to xx.yy.zz.tt closed by remote host" then it usually means your cloud instance does not have enough memory. Make sure to create an instance with 4GB of RAM.