retroforth/doc/book/building/unix
crc 2fdd795b24 docs: fix building of book, add back missing files
FossilOrigin-Name: d7f6ad61844895e8b68fac3249cb5731d4480045110fe56f85d370079a8efa39
2021-03-22 12:18:17 +00:00

70 lines
1.4 KiB
Text

# Building on BSD, Linux, macOS, and other Unix Targets
RETRO is well supported on BSD (tested on FreeBSD, NetBSD,
OpenBSD), Linux, and macOS systems. It should build on any
of these without issue.
## Requirements
- c compiler & linker
- standard headers
- make
## Process
For a standard 32-bit system:
Run `make`
For a 64-bit system:
Run `make OPTIONS=-DBIT64`
This will build the toolchain and then the main `retro`
executable.
## Executables
In the `bin/` directory:
retro
retro-unu
retro-muri
retro-extend
retro-embedimage
retro-describe
## Platform Specific Notes
In addition to the 64-bit build, it is possible to override the
image size, address stack depth, and data stack depth by defining
the appropriate elements.
E.g., for a 64-bit build with:
4,000,000 cells of memory
4,000 item limit on data stack
500 item limit on address stack
Run `make OPTIONS="-DBIT64 -DIMAGE_SIZE=4000000 -DSTACK_DEPTH=4000 -DADDRESSES=500"`
### Haiku
To build on Haiku, you need to link with the *network* library.
E.g.:
make LDFLAGS=-lnetwork
### Unix
On Unix, you can optionally enable the sockets device (and thus the socket
words) by building with `-DENABLE_SOCKETS`.
make OPTIONS="-DENABLE_SOCKETS"
## Issues
If you run into any build issues, please send details to
crc@forth.works so I can work on addressing them as quickly
as possible.