Recebi a seguinte resposta da equipe de suporte da musl.
If you add -v, you should see
.. --start-group -lgcc -lgcc_eh -lc --end-group ..
which means all dependencies between libgcc and libc are resolved. I think gcc does not do the --start-group/--end-group without explicit -static, so only musl-gcc -static hello.c would work.
raise is in libc, referenced from libgcc
__aebi_ldiv0 is in libgcc, referenced from libc with static linking, undefined symbol resolution happens in the order the libraries are listed on the command line (so you need -lgcc -lc -lgcc -lc or the --*-group linker flags to resolve circular deps)
Então eu tive que usar o sinalizador -static durante a compilação.