I'm only amateur and not familiar with linux, it is hard for me to anwser the question exactlly. I made my sysroot by rsync command and used "symlinks -rc ~/sysroot" to correct the absolute path of the symlink. I found the "~/sysroot/lib/aarch64-linux-gnu/libdl.so" was linked to a absolute path to "/lib/aarch64-linux-gnu/libdl.so.2". But "~/sysroot/lib/aarch64-linux-gnu/libdl.so.2" was linked to a relative path to "./libdl-2.31.so". So I guess there must be a mistake in one of the link. After I made "~/sysroot/lib/aarch64-linux-gnu/libdl.so" link to "./libdl.so.2", everything went well.