在使用CMake插件生成项目时,发现VSCode输出窗口输出的是乱码,这让我感觉很头疼,遂写下这篇博客为后人积累经验。
一开始我以为是因为编码的问题导致乱码,于是chcp 65001后重新生成CMake项目,但是发现没有解决,那怕是给VSCode设置gbk编码也是没用。
可能有用的链接vscode 内置cmake output窗口乱码
这是为什么呢?
2025.1.27
到目前为止我只成功了一种解决方法,那就是把VS2019换成VS2022,虽然不知道什么原理,但是能解决问题。很奇怪对吧...
我之前尝试了在VSCode的settings.json里设置了
{"cmake.outputLogEncoding": "utf-8","terminal.integrated.encoding": "utf8","cmake.environment": {"LANG": "en_US.UTF-8"},"cmake.loggingLevel": "debug","cmake.terminal.external": true,"terminal.integrated.profiles.windows": {"PowerShell": {"source": "PowerShell","icon": "terminal-powershell","args": ["-NoExit","chcp 65001"]},"Command Prompt": {"path": ["${env:windir}\\Sysnative\\cmd.exe","${env:windir}\\System32\\cmd.exe"],"args": ["/K","chcp 65001"],"icon": "terminal-cmd"},"Git Bash": {"source": "Git Bash"}},
}
但是好像不管用,因为用终端执行cmake --build d:/Project/CodeTraining/ZeroToCppMaster/build --config Debug --target clean -j 18 --
都能正常输出,并且终端采用的编码是gbk,用VSCode的集成终端测试也是能正常输出,介就很奇怪了Ovo