为了测试我的 Rust cdylib 箱,我需要将其加载到第 3 方 C++ 应用程序中。这意味着
cargo test
必须将我的箱子编译成一些 .so
文件,例如 target/debug/libmycrate.so
从人体工程学角度来看,我最好简单地为我的
test_my_lib!()
添加一些魔法 src/lib.rs
—— 这将添加 #[test]
功能来执行所需的步骤。
cargo test
似乎没有创建 .so 文件,只有 cargo build
可以。有没有办法强制 cargo test
生成它?或者是否有另一种方法可以在内部某处生成该库target/debug/deps/...
?
我认为您应该能够使用自定义测试工具和/或构建脚本的某种组合来实现您想要的。