Cross-compiling for Apple Silicon on x64 windows/linux

I have read the documentation page for packaging and it seems like it only contains instructions for compiling for osx-x64. However I would like to compile for osx-arm64.
So I ran this command: dotnet publish -c Release -r osx-arm64 /p:PublishReadyToRun=false /p:TieredCompilation=false --self-contained on my windows machine, built an application bundle according to the folder structures and sent it to my friend who owns a M1 Mac. When he ran it his system showed this:
image

Did I do anything wrong?

Also, is there a way to compile an universal binary for both intel and apple silicon?

I’m getting the same error (for arm architecture).
x86 compilation runs fine.