我正尝试使用动态链接来编译Rust项目,以减小大小并为应用程序提供.so(或Windows上的.dll)文件,就像Qt在Android上一样。我读了Why are Rust executables so huge?并使用
进行了编译cargo rustc -- -C prefer-dynamic
运行程序时,出现此错误:
% target/debug/t_pro
target/debug/t_pro: error while loading shared libraries: libstd-a021829e87e39dcf.so: cannot open shared object file: No such file or directory
答案 0 :(得分:5)
我有一个answer on Reddit。
rustc --print=sysroot
就我而言,.so文件位于/home/username/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib
中,.rlib位于/home/username/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib
中。
答案 1 :(得分:1)
库会安装在您选择安装Rust的任何位置。我在macOS上使用rustup,所以对我来说它们安装在~/.rustup/toolchains/*whatever*/lib/
中。
使用操作系统的工具搜索特定名称的文件。
另请参阅: