I have found more evidence that I didn't notice at first concerning my linking problem.
Here is what I see when I try to compile,
Free Pascal Compiler version 3.2.2 [2021/05/16] for aarch64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Darwin for AArch64
Compiling marmot.pas
Assembling marmot
Linking marmot
ld: library not found for -lc
An error occurred while linking
marmot.pas(2230,27) Error: Error while linking
marmot.pas(2230,27) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/local/bin/ppca64 returned an error exitcode
The linker (or something) left me three files, linkfiles2063.res, link2063.res, and ppaslink.sh.
Here is linkfiles2063.res:
/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/rtl/sysinit.o
marmot.o
/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/rtl/system.o
link2063.res is long, so I am only showing you the first 8 lines and the last 5 lines:
-arch
arm64
-macosx_version_min
11.0.0
-L/usr/lib/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/**d22/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/rtl/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/opengl/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/libgd/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/pcap/
-L/usr/local/lib/fpc/3.2.2/units/aarch64-darwin/
-L/usr/local/bin/
-lc
And here is all of ppaslink.sh:
#!/bin/sh
DoExitAsm ()
{ echo "An error occurred while assembling $1"; exit 1; }
DoExitLink ()
{ echo "An error occurred while linking $1"; exit 1; }
OFS=$IFS
IFS="
"
/usr/bin/ld -x -multiply_defined suppress -L. -o marmot `cat link2063.res` -filelist linkfiles2063.res
if [ $? != 0 ]; then DoExitLink ; fi
IFS=$OFS