首页 > 解决方案 > Rust:未定义环境变量“PATH_SEPARATOR”

问题描述

我在编译serenityDiscord 机器人库时遇到了麻烦。它在 Linux 上编译良好,但在 Windows 上失败并出现以下错误:

error: environment variable `PATH_SEPARATOR` not defined
      --> C:\Users\my_user\.cargo\registry\src\github.com-1ecc6299db9ec823\proc-macro-nested-0.1.7\src\lib.rs:43:35
       |
    43 | include!(concat!(env!("OUT_DIR"), env!("PATH_SEPARATOR"), "count.rs"));
       |                                   ^^^^^^^^^^^^^^^^^^^^^^
       |
       = note: this error originates in the macro `env` (in Nightly builds, run with -Z macro-backtrace for more info)

它过去也可以在 Windows 上工作,这个错误只发生几天。当我PATH_SEPARATOR=\在 IDE(IntelliJ IDEA)中定义环境变量时,错误是无法读取该路径上的文件(os 错误 2)。
我试图用msvcgnu工具链编译,但总是出现错误。
以前不需要设置环境变量,为什么现在需要设置呢?

标签: rust

解决方案


您可以尝试从系统属性窗口将 Windows 环境变量 PATH_SEPARATOR 设置为 \ 值,如https://docs.oracle.com/en/database/oracle/machine-learning/oml4r/1.5.1/oread/creating-and -modifying-environment-variables-on-windows.html#GUID-DD6F9982-60D5-48F6-8270-A27EC53807D0 您的 IDE 安装可能会阻止此编辑,您可能需要管理员权限才能执行此操作。


推荐阅读