https://wiki.debian.org/ArchitectureSpecificsMemo:
> arm64 aarch64-linux-gnu 64 AARCH64 /lib/ld-linux-aarch64.so.1 aarch64 aarch64
Fedora:
$ ls -l /lib /lib64
lrwxrwxrwx. 1 root root 7 Jul 27 2020 /lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Jul 27 2020 /lib64 -> usr/lib64
$ ldd /bin/sh|grep ld
/lib/ld-linux-aarch64.so.1 (0x0000ffff8c905000)
$ ls -l /lib/ld-linux-aarch64.so.1 /lib64/ld-2.32.so
lrwxrwxrwx. 1 root root 19 Jul 13 07:28 /lib/ld-linux-aarch64.so.1 -> ../lib64/ld-2.32.so
-rwxr-xr-x. 1 root root 961248 Jul 13 07:56 /lib64/ld-2.32.so
$ uname -r
5.14.16-101.fc33.aarch64
So we need both /lib and /lib64 to be present, even though the canonical linker
path uses /lib.
* create the symlink as needed should it be missing. We prefer doing this consistently with Debian's
* multiarch logic, but support Fedora-style multilib too.*/
#if defined(__aarch64__)
+ /* aarch64 ELF ABI actually says dynamic loader is in /lib/, but Fedora puts it in /lib64/ anyway and
+ * just symlinks /lib/ld-linux-aarch64.so.1 to ../lib64/ld-linux-aarch64.so.1. For this to work
+ * correctly, /lib64/ must be symlinked to /usr/lib64/. */
+ { "lib64", 0, "usr/lib/aarch64-linux-gnu\0"
+ "usr/lib64\0", "ld-linux-aarch64.so.1" },
+# define KNOW_LIB64_DIRS 1
#elif defined(__alpha__)
#elif defined(__arc__) || defined(__tilegx__)
#elif defined(__arm__)