在俄语本地化的Visual Studio中构建时,编译器警告是胡言乱语

Compiler warnings are gibberish when building in russian-localized Visual Studio

本文关键字:编译器 警告 胡言乱语 构建 本地化 俄语 Visual Studio      更新时间:2023-10-16

在构建解决方案时,输出中有奇怪的符号:

1>WindowsForm.obj : warning LNK4248: эхЁрчЁх°хээр  ыхъёхьр TypeRef (01000030) фы  "SDL_Renderer"; юсЁрч эхы№ч  чряєёЄшЄ№
1>FatLinesArray.obj : warning LNK4248: эхЁрчЁх°хээр  ыхъёхьр TypeRef (01000014) фы  "SDL_Renderer"; юсЁрч эхы№ч  чряєёЄшЄ№
1>WindowsForm.obj : warning LNK4248: эхЁрчЁх°хээр  ыхъёхьр TypeRef (0100002F) фы  "SDL_Window"; юсЁрч эхы№ч  чряєёЄшЄ№

我有俄语VS,如何解决这个问题?

错误消息是用俄语发出的,可能在代码页cp1251中是"нерешенымаркеМTypeRef"(很可能是类似的)。然后控制台使用不正确的代码页(可能是cp866)读取了它,并将其变成了垃圾。你可以用Tcl:来模仿它

% puts [encoding convertfrom cp866 [encoding convertto cp1251 "нерешенным маркер"]]
эхЁх°хээ√ь ьрЁъхЁ

"Visual Studio选项"对话框中有一个"国际设置"页面,用于选择语言。你可以试着在那里选择一些东西。否则,报告当前选择,命令提示符中chcp的输出将给出当前代码页。

如果在控制台中使用msbuild进行构建,是否会给出明确的消息(即:msbuild-project.sln),那将是一件有趣的事情。