剧情描述

想体验一下号称能够代替 Electron 的 Tauri 框架,但是 Tauri 需要好多前置条件,其中就包括了Microsoft C++ 生成工具Rust,当创建好项目启动时,终端报了一大堆错误,然后就进入主线剧情了。

问题

经过简单排查后发现是 Rust 无法使用。

当编写一个简单的 Rust 程序后无法运行。

(base) PS E:\1_Projects\rust-test> rustc main.rs
error: linking with link.exe failed: exit code: 1
|
= note: "link.exe" "/NOLOGO" "C:\Users\70262\AppData\Local\Temp\rustcX6mapK\symbols.o" "<2 object files omitted>" "C:\Users\70262\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib/{libstd-99a5467416e27682.rlib,libpanic_unwind-b2376f55ca9ba5db.rlib,libwindows_targets-e982c2634e026463.rlib,librustc_demangle-622607d70f9500c2.rlib,libstd_detect-402c0b1e8e67cb33.rlib,libhashbrown-d36035ae19bb0c8b.rlib,librustc_std_workspace_alloc-cb12c14614b55d43.rlib,libunwind-8e666946f8f5db2b.rlib,libcfg_if-ac9947000bdc169e.rlib,liballoc-4f54ad4ac4b0f4c5.rlib,librustc_std_workspace_core-ff8db640d177ed2a.rlib,libcore-745ff350a54e4299.rlib,libcompiler_builtins-b2f39c5f2779068f.rlib}" "kernel32.lib" "kernel32.lib" "advapi32.lib" "ntdll.lib" "userenv.lib" "ws2_32.lib" "dbghelp.lib" "/defaultlib:msvcrt" "/NXCOMPAT" "/OUT:main.exe" "/OPT:REF,NOICF" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NATVIS:C:\Users\70262\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\etc\intrinsic.natvis" "/NATVIS:C:\Users\70262\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\etc\liballoc.natvis" "/NATVIS:C:\Users\70262\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\etc\libcore.natvis" "/NATVIS:C:\Users\70262\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\etc\libstd.natvis"
= note: some arguments are omitted. use --verbose to show all linker arguments
= note: link: extra operand 'main.main.df4eeb67ed85e8bb-cgu.0.rcgu.o'
Try 'link --help' for more information.

提示我可能是Microsoft C++ 生成工具有问题,但是我反复检查了发现 Visual Studio 2022 是装有 C++ 生成工具的,然后我经过了重装 C++ 生成工具重装 Rust 等之后问题依旧没有解决。正当我想重装 Visual Studio 时,猛然发现我的电脑上尽然有两个 Visual Studio,一个 2019 ,一个 2022。点击 19 版的发现甚至没有登录,那就更不用提安装 C++ 生成工具了。

解决方案

给 19 版的 VS 也安装一遍 C++ 生成工具。

问题解决。("▔□▔)