2017-12-12 15:50:39 -08:00
# Instructions
2018-09-01 18:45:00 -07:00
These instructions explain how to set up the tools required to build **pokecrystal** , including [**rgbds** ](https://github.com/rednex/rgbds ), which assembles the source files into a ROM.
2016-01-31 15:36:18 -08:00
2017-12-12 15:50:39 -08:00
If you run into trouble, ask for help on IRC or Discord (see [README.md ](README.md )).
2016-03-16 14:57:03 -07:00
2016-01-31 15:36:18 -08:00
2018-08-29 18:14:39 -07:00
## Windows 10
2014-07-23 20:42:04 -07:00
2018-09-01 18:45:00 -07:00
Download and install [**Windows Subsystem for Linux** ](https://docs.microsoft.com/en-us/windows/wsl/install-win10 ). Then open the **WSL terminal** .
2014-07-23 20:42:04 -07:00
2018-09-01 18:45:00 -07:00
WSL has its own file system that's not accessible from Windows, but Windows files *are* accessible from WSL. So you're going to want to install pokecrystal within Windows. You'll have to change the **current working directory** every time you open WSL.
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
For example, if you want to store pokecrystal in **C:\Users\\*\<user>*\Desktop** , enter this command:
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
```bash
2018-08-29 18:14:39 -07:00
cd /mnt/c/Users/< user > /Desktop
```
2018-09-01 18:45:00 -07:00
(The Windows `C:\` drive is called `/mnt/c/` in WSL. Replace *\<user>* in the example path with your username.)
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
Then follow [the instructions for **Linux** ](#linux ) to build **pokecrystal** .
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
If this doesn't work, try following [the regular Windows instructions ](#windows ) below.
2014-11-12 07:30:37 -08:00
2018-08-29 18:14:39 -07:00
## Windows
2018-09-01 18:45:00 -07:00
### 1. Install the required software
2018-08-29 18:14:39 -07:00
Download [**Cygwin** ](http://cygwin.com/install.html ): **setup-x86_64.exe** for 64-bit Windows, **setup-x86.exe** for 32-bit.
2018-09-01 18:45:00 -07:00
Run setup and leave the default settings. At the "**Select Packages**" step, choose to install the following, all of which are in the "**Devel**" category:
2018-08-29 18:14:39 -07:00
- `make`
- `git`
- `gcc-core`
2018-09-01 18:45:00 -07:00
Click once on the text that says "**Skip**" next to each package to select the most recent version to install.
2018-08-29 18:14:39 -07:00
Then download [**rgbds** ](https://github.com/rednex/rgbds/releases/ ): the latest **win64.zip** or **win32.zip** release. Extract it and put all the `exe` and `dll` files individually in **C:\cygwin64\usr\local\bin** .
2018-09-01 18:45:00 -07:00
**Note: If you already have an older rgbds, you will need to update to 0.3.7 or newer.** Ignore this if you have never installed rgbds before.
### 2. Build pokecrystal
Open the **Cygwin terminal** and enter the following commands.
Cygwin has its own file system that's within Windows, at **C:\cygwin64\home\\*\<user>** *. If you don't want to store pokecrystal there, you'll have to change the **current working directory** every time you open Cygwin.
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
For example, if you want to store pokecrystal in **C:\Users\\*\<user>*\Desktop** :
```bash
cd /cygdrive/c/Users/< user > /Desktop
```
(The Windows `C:\` drive is called `/cygdrive/c/` in Cygwin. Replace *\<user>* in the example path with your username.)
To download **pokecrystal** :
2018-08-29 18:14:39 -07:00
```bash
2017-04-27 21:38:14 -07:00
git clone https://github.com/pret/pokecrystal
2015-10-21 22:15:07 -07:00
cd pokecrystal
```
2014-07-23 20:42:04 -07:00
2015-02-06 13:41:57 -08:00
To build **pokecrystal.gbc** :
2014-07-23 20:42:04 -07:00
2015-10-21 22:15:07 -07:00
```bash
make
```
2012-06-02 13:27:24 -07:00
2018-08-29 18:14:39 -07:00
To build **pokecrystal11.gbc** :
```bash
make crystal11
```
2012-06-02 13:27:24 -07:00
2018-09-01 18:45:00 -07:00
## Mac OS X
Open **Terminal** and enter the following commands.
2015-02-06 13:41:57 -08:00
2018-09-01 18:45:00 -07:00
### 1. Install the required software
To install the **Xcode Command Line Tools** :
2014-03-08 07:46:13 -08:00
2015-10-21 22:15:07 -07:00
```bash
2015-10-25 00:26:12 -07:00
xcode-select --install
2018-09-01 18:45:00 -07:00
```
2012-06-02 13:27:24 -07:00
2018-09-01 18:45:00 -07:00
To install **rgbds** :
```bash
2018-08-29 18:14:39 -07:00
git clone --depth=1 https://github.com/rednex/rgbds
2018-09-01 18:45:00 -07:00
sudo make -C rgbds CFLAGS=-O2 install
```
### 2. Build pokecrystal
To download **pokecrystal** :
2012-06-02 13:27:24 -07:00
2018-09-01 18:45:00 -07:00
```bash
2017-04-27 21:38:14 -07:00
git clone https://github.com/pret/pokecrystal
2015-10-21 22:15:07 -07:00
cd pokecrystal
```
2013-08-03 11:55:45 -07:00
2014-03-08 07:46:13 -08:00
To build **pokecrystal.gbc** :
2013-08-12 09:36:27 -07:00
2015-10-21 22:15:07 -07:00
```bash
make
```
2013-08-12 09:36:27 -07:00
2018-09-01 18:45:00 -07:00
To build **pokecrystal11.gbc** :
```bash
make crystal11
```
2014-03-08 07:46:13 -08:00
2018-08-29 18:14:39 -07:00
## Linux
2017-12-12 15:50:39 -08:00
2018-09-01 18:45:00 -07:00
Open **Terminal** and enter the following commands.
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
### 1. Install the required software
The commands to do this depend on which distro you're using.
#### Debian or Ubuntu
To install the software required for **pokecrystal** :
2018-08-29 18:14:39 -07:00
```bash
2018-09-01 18:45:00 -07:00
sudo apt-get install make gcc git
```
2014-03-08 07:46:13 -08:00
2018-09-01 18:45:00 -07:00
To install **rgbds** :
```bash
sudo apt-get install bison libpng-dev
2018-08-29 18:14:39 -07:00
git clone --depth=1 https://github.com/rednex/rgbds
sudo make -C rgbds CFLAGS=-O2 install
```
#### OpenSUSE
2018-09-01 18:45:00 -07:00
To install the software required for **pokecrystal** :
2018-08-29 18:14:39 -07:00
```bash
2018-09-01 18:45:00 -07:00
sudo zypper install make gcc git
```
2018-08-29 18:14:39 -07:00
2018-09-01 18:45:00 -07:00
To install **rgbds** :
```bash
sudo zypper install bison libpng16-devel
2018-08-29 18:14:39 -07:00
git clone --depth=1 https://github.com/rednex/rgbds
sudo make -C rgbds CFLAGS=-O2 install
```
#### Arch Linux
2018-09-01 18:45:00 -07:00
To install the software required for **pokecrystal** :
2018-08-29 18:14:39 -07:00
```bash
2018-09-01 18:45:00 -07:00
sudo pacman -S make gcc git
```
2012-06-02 13:27:24 -07:00
2018-09-01 18:45:00 -07:00
To install **rgbds** :
```bash
sudo pacman -S bison libpng
2018-08-29 18:14:39 -07:00
git clone --depth=1 https://github.com/rednex/rgbds
sudo make -C rgbds CFLAGS=-O2 install
```
#### Termux
2018-09-01 18:45:00 -07:00
To install the software required for **pokecrystal** :
2018-08-29 18:14:39 -07:00
```bash
2018-09-01 18:45:00 -07:00
sudo apt install make clang git sed
```
To install **rgbds** :
```bash
sudo apt install rgbds
2018-08-29 18:14:39 -07:00
```
#### Other distros
2018-09-01 18:45:00 -07:00
If your distro is not listed here, try to find the required software in its repositories:
2017-09-23 22:34:44 -07:00
- `make`
2018-08-29 18:14:39 -07:00
- `gcc` (or `clang` )
2017-09-23 22:34:44 -07:00
- `git`
2018-08-29 18:14:39 -07:00
- `rgbds`
2016-01-31 15:27:32 -08:00
2018-09-01 18:45:00 -07:00
If `rgbds` is not available, you'll also need these:
2018-08-29 18:14:39 -07:00
- `bison`
- `libpng` (and the development headers)
2012-06-02 13:27:24 -07:00
2018-09-01 18:45:00 -07:00
To install **rgbds** :
2018-08-29 18:14:39 -07:00
```bash
git clone --depth=1 https://github.com/rednex/rgbds
sudo make -C rgbds CFLAGS=-O2 install
```
2017-09-23 22:34:44 -07:00
2018-09-01 18:45:00 -07:00
### 2. Build pokecrystal
To download **pokecrystal** :
2012-06-02 13:27:24 -07:00
2015-10-21 22:15:07 -07:00
```bash
2017-04-27 21:38:14 -07:00
git clone https://github.com/pret/pokecrystal
2015-10-21 22:15:07 -07:00
cd pokecrystal
```
2013-08-03 11:57:10 -07:00
2015-10-21 22:15:07 -07:00
To build **pokecrystal.gbc** :
2014-03-08 07:46:13 -08:00
2015-10-21 22:15:07 -07:00
```bash
make
```
2018-09-01 18:45:00 -07:00
To build **pokecrystal11.gbc** :
```bash
make crystal11
```