./configure is a generated file. It's not committed to the repository. If you download a release (like "guile-3.0.0.tar.gz"), it has the files you're looking for.
Or you can learn autotools and do it yourself, but I don't recommend opening that can of worms.
Hmmh, it's been a decade or two since I used the autotools last, so I'll need a hint. I find it slightly disturbing that the README file is of little help though.
Further, if I try naively
$ sh -x ./autogen.sh
then that fails on a dependency on libtoolize, of which I never have heard of and which doesn't seem to be known to bananian.
libtoolize is a program provided by the libtool package. It's pretty common in the GNU ecosystem, and is used for managing some of the more subtle aspects of build-time and runtime linking.
Agreed that the README needs much better documentation of the package-time dependencies (autoconf, automake, m4, perl, etc), and the build-time dependencies (libtool, libgc, plus a bunch of other libraries).
Yeah, that was just my ignorance which a quick search on the Imterwebs remedied. With the bananian (Debian) package 'libtool' installed (and flex and libunistring-dev)
$ sh -x ./autogen.sh
completes successfully and I got a ./configure and a INSTALL file (don't recall having seen an INSTALL file be autogenerated, but my memory might very well be failing me there). The './configure' also completes successfully (after a while -- seems like autoconfigure still believes that there are other Unices besides Linux left ;-} but 'make' eventually fails with
--8<--
[..]
CC libguile_3.0_la-intrinsics.lo
CC libguile_3.0_la-ioext.lo
CC libguile_3.0_la-jit.lo
jit.c:232:1: error: initializer element is not constant
static const jit_gpr_t THREAD = JIT_V0;
^
jit.c:237:1: error: initializer element is not constant
static const jit_gpr_t SP = JIT_R0;
^
[..]
-->8--
Or you can learn autotools and do it yourself, but I don't recommend opening that can of worms.