The romforth project leverages
binutils
to assemble/link/disassemble code for various architectures. The way to build
binutils
for these different architectures is arcane and rather than subject
folks who want to use romforth
to that, I've created a repo called
build-binutils which will build
all of the binutils binaries that are needed by romforth
.
Using it is straightforward: just run make
and then use the bin
directory
as part of the PATH
while building romforth
.
Building binutils
in turn depends on various other binaries in your toolchain.
This seems to be the minimal set which is currently required:
ar bison cmp echo g++ ln makeinfo pkg-config sort
arch c++ cp egrep gawk locale mkdir rm test
as cat date expr grep ls msgfmt rmdir touch
awk cc diff find ld m4 mv sed tr
basename chmod dirname flex link make perl sleep uname
I assume apt-get install -y build-essential
on Ubuntu/Debian based distros
is all you need to setup a machine populated with all of these binaries which
are needed to build binutils
.
The binutils
code is currently cloned from https://github.com/romforth/binutils
which is a "vendored" snapshot of https://sourceware.org/git/binutils-gdb.
There appear to be some unofficial mirrors of this code available at:
- https://github.com/bminor/binutils-gdb
- https://gitlab.com/gnutools/binutils-gdb
- https://git.sr.ht/~sourceware/binutils-gdb
There are also the release blobs that are available from: https://ftp.gnu.org/gnu/binutils/
If you want to use a newer version you can just populate that directory directly from the original git location or any of the mirrors or releases listed above.