# 错误：包 `crate_name` 要求 rustc >= X.Y.Z，但当前 rustc 版本是 A.B.C

- **ID:** `rust/cargo-msrv-version-conflict`
- **领域:** rust
- **类别:** install_error
- **验证级别:** ai_generated
- **修复率:** 90%

## 根因

依赖项或包本身指定的最低支持 Rust 版本（MSRV）高于当前安装的 Rust 编译器版本，导致构建失败。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| rustc 1.70.0 | active | — | — |
| rustc 1.71.0 | active | — | — |
| rustc 1.72.0 | active | — | — |
| cargo 1.70.0 | active | — | — |

## 解决方案

1. ```
   Update Rust to the required version using `rustup`: `rustup update stable` to get the latest stable, or `rustup install X.Y.Z && rustup default X.Y.Z` for a specific version.
   ```
2. ```
   If you cannot update Rust, find an older version of the dependency that supports your Rust version by specifying an exact version in `Cargo.toml`: `crate_name = "=1.2.3"` where `1.2.3` is known to work.
   ```
3. ```
   Use `cargo +nightly build` to temporarily use a nightly toolchain if the MSRV requirement is for stable, but note nightly may have other issues; better to use the specific required version.
   ```

## 无效尝试

- **** — This only affects the local package's MSRV, not the dependency's MSRV; the error comes from the dependency's requirement, which is enforced by Cargo. (90% 失败率)
- **** — If all compatible versions of the dependency have the same or higher MSRV, `cargo update` won't resolve the issue; it may even pull a version with an even higher MSRV. (70% 失败率)
- **** — This is fragile, requires maintaining a fork, and may break if the dependency uses features only available in newer Rust versions. (80% 失败率)
