因此,贯穿alloc
和std
的方法都标记有#[cfg(not(no_global_oom_handling))]
,主要是执行分配的方法,其中内存不足的情况通过死机来处理。我整个上午都在研究如何在启用该标记的情况下使用alloc
。我已经进入了一些兔子洞,如build-std
,但我一无所获。
- 注 *:我知道其中的含义;这不是应该还是不应该的问题,只是如何启用
no_global_oom_handling
的问题。
有人知道如何启用这个功能吗?我很惊讶它没有被记录在任何地方,甚至它的跟踪问题。
1条答案
按热度按时间e1xvtsh31#
您需要传递一个
--cfg
选项。如果直接使用rustc
,则作为参数传递,如果使用Cargo,则作为.cargo/config.toml
中的RUSTFLAGS
environment variable或build.rustflags
configuration option传递。示例(包括
build-std
):另请参阅:How to set cfg options to compile conditionally?