To make it more clear, here's an extract from reference.
-
bin
: ordinary executable. -
lib
: a library to be linked statically into Rust programs. -
dylib
: a library to be linked dynamically into Rust programs. -
staticlib
: a library to be linked statically into non-Rust programs. -
cdylib
: a library to be linked dynamically into non-Rust programs.
(plus rlib
as mainly internal format and proc_macro
, used, well, for procedural macros)