在Windows中,当编译C++时,我可以指定/MT compiler option使用运行时库的静态版本,即not动态链接到MSVCRT。Rust/Cargo在这方面是如何表现的,因为没有这样的选项?它是静态链接还是动态链接?
/MT
sbdsn5lh1#
我想你可以指定它,下面是启用它的RFC:https://github.com/rust-lang/rfcs/blob/master/text/1721-crt-static.md在rustc的书中有一页提到了它。这也支持特性+crt-static和-crt-static来控制静态C运行时链接。创建一个名为.cargo/config.toml的文件,并在其中指定rustflagshttps://doc.rust-lang.org/cargo/reference/config.html的内部config.toml
.cargo/config.toml
rustflags
config.toml
... [build] rustflags = ["-C", "target-feature=+crt-static"] ...
字符串虽然我还没有尝试过,但我想它应该会起作用。
1条答案
按热度按时间sbdsn5lh1#
我想你可以指定它,下面是启用它的RFC:https://github.com/rust-lang/rfcs/blob/master/text/1721-crt-static.md
在rustc的书中有一页提到了它。
这也支持特性+crt-static和-crt-static来控制静态C运行时链接。
创建一个名为
.cargo/config.toml
的文件,并在其中指定rustflags
https://doc.rust-lang.org/cargo/reference/config.html的
内部
config.toml
字符串
虽然我还没有尝试过,但我想它应该会起作用。