【问题标题】:gnu make installed with OS language使用 OS 语言安装的 gnu make
【发布时间】:2011-02-11 00:52:30
【问题描述】:

我在我的 windows 机器上安装了最新的 GNU make。

安装程序决定将语言设置为操作系统语言,但我没有收到提示。我希望它是英文的。我的操作系统是瑞典语。

我记得我在另一个 GNU 程序中遇到过类似的问题(不记得是哪个),这是通过添加值为“c”的环境变量“lang”来解决的。

如何将 GNU make 的语言切换为英文?

【问题讨论】:

    标签: mingw gnu-make


    【解决方案1】:

    我不知道 Windows 是否有区分大小写的环境变量,但我希望 GNU make 能够使用LANG=C 完全切换到美国英语。如果这没有帮助,请尝试LC_ALL=C,或检查mingw 环境中是否有locale 命令可以帮助您显示准确的语言环境设置。

    如果您在 mingw bash shell 中设置这些环境变量,请确保 shell 将这些环境变量导出到它启动的进程(例如询问 make)。 IE。要么以export FOO=bar 开头设置值,要么在使用FOO=bar 设置它们后使用单独的export FOO 导出它们。

    (我假设 mingw 在语言环境方面表现得像标准 GNU 环境。)

    【讨论】:

    • 您对 env var 的建议无效。重命名 `C:\program\gnuwin32\share` 下的 locale 文件夹确实有效。所以删除语言数据本身是有效的,谢谢。但是我也想知道使用语言的信息是在哪里设置的? (以及为什么 GNU 会在没有提示的情况下自动设置操作系统语言!)
    • 您确实导出了变量,不是吗?否则只有当前 shell 会看到变量,而 shell 启动的程序看不到。
    • No locale 命令在“最小”环境中有意义,但感谢您明确确认。
    • 你的意思是确保make 知道环境变量吗?是的,LANG=C 在我的机器上已经存在很久了。另外,每次更改 env var 时我都会重新启动 shell,然后尝试 make 并读取输出。
    【解决方案2】:

    我的操作系统是日文的,所以终端输出乱码。对我有用的是设置 LANGUAGE 变量:

    > make
    make: *** ?^?[?Q?b?g?a?w’e?3?e?A?¨?c?,, makefile ?a?c?A?c?e?U?1?n.  ’†?~.
    > set LANGUAGE=en_US
    > make
    make: *** No targets specified and no makefile found.  Stop.
    

    虽然the documentation suggests otherwise,但我没有运气设置其他环境变量。

    【讨论】:

      【解决方案3】:

      对于使用德语语言环境的 Linux 下的我来说,直接将它传递给 make 如下适用于 bash:

      $ make tfred
      make: *** Keine Regel, um „tfred“ zu erstellen.  Schluss.
      $ LANGUAGE=en_US make trffef
      make: *** No rule to make target 'trffef'.  Stop.
      

      【讨论】:

        猜你喜欢
        • 2023-02-06
        • 1970-01-01
        • 2019-01-11
        • 1970-01-01
        • 1970-01-01
        • 2014-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多