mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-13 04:39:36 +00:00
Add Cygwin support (#594)
* Add Cygwin support * revert .gitignore changes * Add Cygwin instructions * corrections * specify dependencies in README.md
This commit is contained in:
parent
d2563b3b91
commit
be84e1f0f8
17 changed files with 2583 additions and 3 deletions
2
Makefile
2
Makefile
|
@ -21,7 +21,7 @@ MAKE = make
|
|||
CPPFLAGS += -P
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
$(error Native Windows builds not yet supported. Please use WSL, Docker or a Linux VM)
|
||||
DETECTED_OS=windows
|
||||
else
|
||||
UNAME_S := $(shell uname -s)
|
||||
ifeq ($(UNAME_S),Linux)
|
||||
|
|
20
README.md
20
README.md
|
@ -31,7 +31,25 @@ For Windows 10, install WSL and a distribution by following this
|
|||
[Windows Subsystem for Linux Installation Guide](https://docs.microsoft.com/en-us/windows/wsl/install-win10).
|
||||
We recommend using Debian or Ubuntu 18.04 Linux distributions.
|
||||
|
||||
For older versions of Windows, install a Linux VM or refer to [Docker](#Docker) instructions.
|
||||
For older versions of Windows, install a Linux VM or refer to either [Docker](#Docker) or [Cygwin](#Cygwin) instructions.
|
||||
|
||||
### Cygwin
|
||||
|
||||
If you want to use Cygwin, you will need to:
|
||||
- Download and install [Git Bash](https://git-scm.com/download/win).
|
||||
- Download and install [Cygwin](https://cygwin.com).
|
||||
- [Build and install mips-linux-binutils](docs/BUILDING_BINUTILS_CYGWIN.md).
|
||||
|
||||
Once mips-linux-binutils is installed you will need to install the following packages using Cygwin's installer:
|
||||
- python3
|
||||
- libiconv
|
||||
- dos2unix
|
||||
|
||||
Now before you try to build anything, if you cloned the repository in windows you will need fix the file line endings:
|
||||
```bash
|
||||
dos2unix fixle.sh
|
||||
./fixle.sh
|
||||
```
|
||||
|
||||
### macOS
|
||||
|
||||
|
|
42
docs/BUILDING_BINUTILS_CYGWIN.md
Normal file
42
docs/BUILDING_BINUTILS_CYGWIN.md
Normal file
|
@ -0,0 +1,42 @@
|
|||
# Building mips-linux-binutils on Windows using Cygwin
|
||||
|
||||
First, you will need to install the following packages using the Cygwin installer:
|
||||
- make
|
||||
- gcc-g++
|
||||
- bison
|
||||
- flex
|
||||
- texinfo
|
||||
- binutils (Make sure to check the "Src?" checkbox since we're interested in the source code. Once the download is finished, you will find it in `/usr/src/`)
|
||||
|
||||
Create destination dir for binutils
|
||||
```bash
|
||||
sudo mkdir -p /opt/cross
|
||||
```
|
||||
Extract binutils source
|
||||
```bash
|
||||
cd /usr/src/binutils-[...].src/
|
||||
tar xjf binutils-[...].tar.bz2
|
||||
```
|
||||
|
||||
Create and enter build dir
|
||||
```bash
|
||||
mkdir build-binutils
|
||||
cd build-binutils
|
||||
```
|
||||
|
||||
Configure the build
|
||||
```bash
|
||||
../binutils-gdb/configure --target=mips-linux-gnu --prefix=/opt/cross --disable-gprof --disable-nls --disable-werror --disable-gdb --disable-libdecnumber --disable-readline --disable-sim
|
||||
```
|
||||
|
||||
Make and install binutils
|
||||
```bash
|
||||
make -j
|
||||
sudo make install -j
|
||||
```
|
||||
|
||||
Add the new binutils binaries to your system PATH:
|
||||
|
||||
You can do that by adding `PATH=$PATH:/opt/cross/bin` to `~/.bashrc` and then reloading `~/.bashrc`.
|
||||
|
||||
Alternatively you can edit the `Path` variable in `Edit the system environment variables`>`Environment Variables` (in which case you will need to relaunch your terminal).
|
|
@ -7,7 +7,7 @@ all: $(PROGRAMS)
|
|||
cd ZAPD && $(MAKE)
|
||||
|
||||
clean:
|
||||
$(RM) $(PROGRAMS)
|
||||
$(RM) $(PROGRAMS) $(addsuffix .exe,$(PROGRAMS))
|
||||
$(RM) ZAPD/ZAPD.out
|
||||
# Need to clean the above line later...
|
||||
|
||||
|
|
BIN
tools/ido_recomp/windows/5.3/as1.exe
Normal file
BIN
tools/ido_recomp/windows/5.3/as1.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/5.3/cc.exe
Normal file
BIN
tools/ido_recomp/windows/5.3/cc.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/5.3/cfe.exe
Normal file
BIN
tools/ido_recomp/windows/5.3/cfe.exe
Normal file
Binary file not shown.
1260
tools/ido_recomp/windows/5.3/err.english.cc
Normal file
1260
tools/ido_recomp/windows/5.3/err.english.cc
Normal file
File diff suppressed because it is too large
Load diff
BIN
tools/ido_recomp/windows/5.3/ugen.exe
Normal file
BIN
tools/ido_recomp/windows/5.3/ugen.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/5.3/uopt.exe
Normal file
BIN
tools/ido_recomp/windows/5.3/uopt.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/7.1/as1.exe
Normal file
BIN
tools/ido_recomp/windows/7.1/as1.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/7.1/cc.exe
Normal file
BIN
tools/ido_recomp/windows/7.1/cc.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/7.1/cfe.exe
Normal file
BIN
tools/ido_recomp/windows/7.1/cfe.exe
Normal file
Binary file not shown.
1260
tools/ido_recomp/windows/7.1/err.english.cc
Normal file
1260
tools/ido_recomp/windows/7.1/err.english.cc
Normal file
File diff suppressed because it is too large
Load diff
BIN
tools/ido_recomp/windows/7.1/ugen.exe
Normal file
BIN
tools/ido_recomp/windows/7.1/ugen.exe
Normal file
Binary file not shown.
BIN
tools/ido_recomp/windows/7.1/uopt.exe
Normal file
BIN
tools/ido_recomp/windows/7.1/uopt.exe
Normal file
Binary file not shown.
BIN
tools/mipsdisasm
BIN
tools/mipsdisasm
Binary file not shown.
Loading…
Reference in a new issue