> Note that I have left out the instructions to statically link binaries because they are documented as unsupported
That's a bit annoying, especially since you're already using raw syscall numbers anyways. Here's how to make it static:
.intel_syntax noprefix
#include <sys/syscall.h>
#define UNIX_SYSCALL 0x2000000
.globl start
start:
mov rax, UNIX_SYSCALL | SYS_write
mov rdi, 1
lea rsi, text[rip]
lea rdx, length
syscall
mov rax, UNIX_SYSCALL | SYS_exit
xor rdi, rdi
syscall
text:
.asciz "Hello, world!\n"
.equ length, . - text
Compile that with clang -static -nostdlib.