Cargo.toml depends on gtk but the crate is unmaintained. This is the message on crates.io:
UNMAINTAINED Rust bindings for the GTK+ 3 library (use gtk4 instead)
Ignoring this and compiling a GTK4 app anyways gives strange errors similar to this issue.