我刚刚创建了我的第一个Rust hello world程序,并接着创建了一个websocket客户端,使用以下编译:
cargo build --release
使用十六进制编辑器检查位于 hello_cargo\target\release
目录下的 216 KB
可执行文件,我看到:
C:\\Users\\GirkovArpa\\.cargo\\registry\\src\\github.com-1ecd2293db9ea513\\embedded-websocket-0.3.0\\src\\lib.rs
C:\\Users\\GirkovArpa\\.cargo\\registry\\src\\github.com-1ecd2293db9ea513\\heapless-0.5.5\\src\\string.rs
C:\\Users\\GirkovArpa\\.cargo\\registry\\src\\github.com-1ecd2293db9ea513\\rand-0.7.3\\src\\rngs\\thread.rs
C:\\Users\\GirkovArpa\\Documents\\GitHub\\hello_cargo\\target\\release\\deps\\hello_cargo.pdb
还有一些类似这样的字符串。而且这是在运行strip hello_cargo.exe
后出现的。
我该如何避免这种情况?
.unwrap()
)。事实上,任何代码片段 - 包括 stdlib 或依赖项 - 都可以调用std::file!
-macro,如果没有被证明是死代码,那么该字符串将被包含在最终的可执行文件中。因此,如果隐私对您非常重要,唯一可靠的方法就是在虚拟机内构建。 - user2722968