まず、cargoコマンドでそれぞれのプロジェクトを作成する。
これによって、同じ階層に二つのプロジェクトができる。
root ├─mylib │ │ .gitignore │ │ Cargo.lock │ │ Cargo.toml │ │ │ ├─.vscode │ │ launch.json │ │ │ ├─src │ │ lib.rs │ │ │ └─target │ │ .rustc_info.json │ │ CACHEDIR.TAG │ │ │ └─debug │ └─mymain │ .gitignore │ Cargo.lock │ Cargo.toml │ ├─src │ main.rs │ └─target │ .rustc_info.json │ CACHEDIR.TAG │ └─debugu
// mylib/src/lib.rs pub fn mylib_hello() { println!("Mylib: Hello, world!"); }
extern crate mylib; fn main() { mylib::mylib_hello(); }
[dependencies] mylib = { path = "../mylib" }
mymainだけをcargo buildすれば、自動でmylibもビルドされてリンクされる。