It's due to my misunderstanding of generate_binary.
Now it's getting clear that for library build, generate_binary is required.