安装Rust
Rust直接从官网下载安装文件:Install Rust - Rust Programming Language
下载,运行安装即可。
安装好提示:
Rust is installed now. Great!
To get started you may need to restart your current shell.
This would reload its PATH environment variable to include
Cargo's bin directory (%USERPROFILE%\.cargo\bin).
Press the Enter key to continue.
设置cargo加速
进入目录,如~/.cargo
删除cache文件
rm .package-cache
创建config.toml文件
[source.crates-io]
replace-with = 'tuna' # 可以根据需要替换为其他源# 中国科学技术大学
[source.ustc]
registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"# 阿里云
[source.aliyun]
registry = "sparse+https://mirrors.aliyun.com/crates.io-index/"# 上海交通大学
[source.sjtu]
registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index/"# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"# rustcc社区
[source.rustcc]
registry = "https://code.aliyun.com/rustcc/crates.io-index.git"
再使用cargo,就会发现下载文件快很多!
安装Zed
Zed的官网:GitHub - zed-industries/zed: Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
Zed有LInux和Mac OS的安装包,Windows下反而要自己编译安装。
安装条件
需要rustup、VisualStudo、CMake 以及Windows 10 SDK version 2104 (10.0.20348.0)等
开始安装
下载源代码
git clone https://github.com/zed-industries/zed
进入zed目录,然后
cargo 安装
执行:
cargo run
编译碰到报错:Unable to init GPU context: NoSupportedDeviceFound
无法解决问题。
zed安装失败。
总结
大约是显卡太老了,导致zed编译的时候报错Unable to init GPU context: NoSupportedDeviceFound
调试
cargo run报错Unable to init GPU context: NoSupportedDeviceFound
E:\github\zed>cargo runFinished `dev` profile [unoptimized + debuginfo] target(s) in 10.10sRunning `target\debug\zed.exe`thread 'main' panicked at crates\gpui\src\platform\windows\platform.rs:111:47:
Unable to init GPU context: NoSupportedDeviceFoundStack backtrace:0: std::backtrace_rs::backtrace::dbghelp64::traceat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\..\..\backtrace\src\backtrace\dbghelp64.rs:911: std::backtrace_rs::backtrace::trace_unsynchronizedat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\..\..\backtrace\src\backtrace\mod.rs:662: std::backtrace::Backtrace::createat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\backtrace.rs:3313: std::backtrace::Backtrace::captureat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\backtrace.rs:2964: anyhow::Error::msg<alloc::string::String>at C:\Users\Admin\.cargo\registry\src\mirrors.tuna.tsinghua.edu.cn-e791a3f93f26854f\anyhow-1.0.97\src\backtrace.rs:275: gpui::platform::blade::blade_context::impl$0::new::closure$0at .\crates\gpui\src\platform\blade\blade_context.rs:206: core::result::Result::map_err<blade_graphics::hal::Context,enum2$<blade_graphics::NotSupportedError>,anyhow::Error,gpui::platform::blade::blade_context::impl$0::new::closure_env$0>at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\result.rs:8567: gpui::platform::blade::blade_context::BladeContext::newat .\crates\gpui\src\platform\blade\blade_context.rs:128: gpui::platform::windows::platform::WindowsPlatform::newat .\crates\gpui\src\platform\windows\platform.rs:1119: gpui::platform::current_platformat .\crates\gpui\src\platform.rs:13310: gpui::app::Application::newat .\crates\gpui\src\app.rs:12111: zed::mainat .\crates\zed\src\main.rs:20012: core::ops::function::FnOnce::call_once<void (*)(),tuple$<> >at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\ops\function.rs:25013: core::hint::black_boxat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\hint.rs:47514: std::sys::backtrace::__rust_begin_short_backtrace<void (*)(),tuple$<> >at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\std\src\sys\backtrace.rs:15215: std::rt::lang_start::closure$0<tuple$<> >at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\std\src\rt.rs:19516: std::rt::lang_start_internal::closure$1at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\rt.rs:17417: std::panicking::try::do_callat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\panicking.rs:58418: std::panicking::tryat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\panicking.rs:54719: std::panic::catch_unwindat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\panic.rs:35820: std::rt::lang_start_internalat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\rt.rs:17421: std::rt::lang_start<tuple$<> >at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\std\src\rt.rs:19422: main23: invoke_mainat D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:7824: __scrt_common_main_sehat D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:28825: BaseThreadInitThunk26: RtlUserThreadStart
stack backtrace:0: std::panicking::begin_panic_handlerat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\std\src\panicking.rs:6921: core::panicking::panic_fmtat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\core\src\panicking.rs:752: core::result::unwrap_failedat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library\core\src\result.rs:17043: core::result::Result::expect<gpui::platform::blade::blade_context::BladeContext,anyhow::Error>at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\result.rs:10614: gpui::platform::windows::platform::WindowsPlatform::newat .\crates\gpui\src\platform\windows\platform.rs:1115: gpui::platform::current_platformat .\crates\gpui\src\platform.rs:1336: gpui::app::Application::newat .\crates\gpui\src\app.rs:1217: zed::mainat .\crates\zed\src\main.rs:2008: core::ops::function::FnOnce::call_once<void (*)(),tuple$<> >at /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\ops\function.rs:2509: core::hint::black_boxat /rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688\library\core\src\hint.rs:475
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
error: process didn't exit successfully: `target\debug\zed.exe` (exit code: 101)
显卡是:quadro k4200 下载驱动试试:NVIDIA RTX / Quadro Desktop and Notebook Driver Release 470
以前的是: NVIDIA-SMI 474.82 Driver Version: 474.82 CUDA Version: 11.4
更新了也不行,而且现在nvidia-smi也不能执行了,它不在path里了
查看zed手册,提到需要Vulkan
下载Vulan驱动:Vulkan Driver Support | NVIDIA Developer
If you see a notification saying Zed failed to open a window: NoSupportedDeviceFound
this means that Vulkan cannot find a compatible GPU. You can begin troubleshooting Vulkan by installing the vulkan-tools
package and running:
vkcube
但是最新的Vulkan1.4是支持到572版本,474版本的没找到。而且这块卡quadro k4200 不在支持列表。
所以,这里只好放弃了。