【发布时间】:2011-02-11 00:52:30
【问题描述】:
我在我的 windows 机器上安装了最新的 GNU make。
安装程序决定将语言设置为操作系统语言,但我没有收到提示。我希望它是英文的。我的操作系统是瑞典语。
我记得我在另一个 GNU 程序中遇到过类似的问题(不记得是哪个),这是通过添加值为“c”的环境变量“lang”来解决的。
如何将 GNU make 的语言切换为英文?
【问题讨论】:
我在我的 windows 机器上安装了最新的 GNU make。
安装程序决定将语言设置为操作系统语言,但我没有收到提示。我希望它是英文的。我的操作系统是瑞典语。
我记得我在另一个 GNU 程序中遇到过类似的问题(不记得是哪个),这是通过添加值为“c”的环境变量“lang”来解决的。
如何将 GNU make 的语言切换为英文?
【问题讨论】:
我不知道 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 环境。)
【讨论】:
locale 文件夹确实有效。所以删除语言数据本身是有效的,谢谢。但是我也想知道使用语言的信息是在哪里设置的? (以及为什么 GNU 会在没有提示的情况下自动设置操作系统语言!)
locale 命令在“最小”环境中有意义,但感谢您明确确认。
make 知道环境变量吗?是的,LANG=C 在我的机器上已经存在很久了。另外,每次更改 env var 时我都会重新启动 shell,然后尝试 make 并读取输出。
我的操作系统是日文的,所以终端输出乱码。对我有用的是设置 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,但我没有运气设置其他环境变量。
【讨论】:
对于使用德语语言环境的 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.
【讨论】: