VS Code 无法启动 rust-analyzer,错误代码:0xc00007b。个人推断出现这个问题的原因是 VS Code 插件没有提供可用于 GNU 工具链的 rust-analyzer(见 2023/1/19 更正)。针对这类问题,可以依靠指定 rust-analyzer 可执行文件的位置来解决。

参考用户手册:https://rust-analyzer.github.io/manual.html#manual-installation

If you are running an unsupported platform, you can install rust-analyzer-no-server.vsix and compile or obtain a server binary. Copy the server anywhere, then add the path to your settings.json, for example:
{ "rust-analyzer.server.path": "~/.local/bin/rust-analyzer-linux" }

下面简单记录一下配置过程:

  1. 在 VS Code 中安装 rust-analyzer 插件
  2. 使用命令 rustup component add rust-analyzer 安装 rust-analyzer 组件
  3. 找到组件安装的位置,我电脑上的安装位置是 ~/.rustup/toolchains/stable-x86_64-pc-windows-gnu/bin/rust-analyzer
  4. 在 VS Code 配置文件中写入 "rust-analyzer.server.path": "~/.rustup/toolchains/stable-x86_64-pc-windows-gnu/bin/rust-analyzer

2023/1/19 更正:在排查程序依赖项时发现,系统不存在 vcruntime140.dll。修复 Visual C++ 可再发行程序包(Microsoft Visual C++ Redistributable packages)发现 rust-analyzer 可以正常运行。这说明问题的原因是 Visual C++ 可再发行程序包损坏导致依赖运行时的程序都无法使用。这里推荐使用 lucasg/Dependencies 来查看程序依赖项,比 Dependency Walker 好用太多。

最后修改:2023 年 01 月 19 日
如果觉得我的文章对你有用,请随意赞赏