我有 src/bin/linux-only.rs
做一些只在 Linux 上工作的事情(例如,只存在于 Linux 上的 libc 绑定(bind))。我想排除该文件在 OS X 上构建。
我开始将 #[cfg(target_os = "linux")]
放在 linux-only.rs
中的每个 block 上,但这使源代码变得杂乱无章原因。
有更好的方法吗?
最佳答案
在文件顶部写入 #![cfg(target_os = "linux")]
(注意感叹号)将适用于整个文件(只要它包含单个模块) ),而不仅仅是下一个方 block (项目)。来源:Rust reference .
编辑:如果您可以将该文件移动到它自己的箱子中,您可以利用 Cargo 的 platform-specific dependencies .
关于rust - 如何排除在 OS X 上构建文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39733252/