通过多个级别的板条箱导出操作导出共享库路径

时间:2019-04-05 16:16:09

标签: rust rust-cargo

build.rs的{​​{1}}板条箱中,我有:

level1-sys

然后在 let dst = cmake::Config::new(Path::new("somelib")) .build() .join("build"); println!("cargo:rustc-link-search=native={}", dst.display()); println!("cargo:rustc-link-lib=dylib=somelib"); 上进行level2的创建, 然后有level1-sys个二进制板条箱。

如果我通过level3运行此level3条板箱,则一切正常, 但如果我手动运行它,则会报告:

cargo run

是否可以找到从 error while loading shared libraries: libsomelib.so: cannot open shared object file: No such file or directory libsomelib.so的路径? 对于需要打包二进制文件的外部脚本,我需要此信息。

很明显,我可以在cargo子目录中进行搜索, 但是我使用调试/发布/交叉编译等等。 此外,即使对于target的具体变体,例如target/release的几次重建之后,也有几个level1-sys库,例如:

libsomelib.so

0 个答案:

没有答案