mcpField
B
build-rust

build-rust

github.com/d-o-hub开发1339 次安装今天更新
代码仓库

关于 build-rust

build-rust 是用于构建和检查 Rust 工作区的命令行技能,提供开发、发布、性能分析和快速校验模式,并包含构建产物管理及常见问题排查指导。

主要功能

  1. 01开发与发布构建
  2. 02构建耗时分析
  3. 03快速检查工作区类型
  4. 04清理产物与磁盘空间建议
  5. 05排查构建问题

适用场景

  1. 01迭代开发 Rust 工作区
  2. 02准备优化后的生产构建
  3. 03检查构建性能
  4. 04减少构建产物并诊断故障

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/d-o-hub/rust-self-learning-memory --skill build-rust

安装后在 Claude Code 中输入/build-rust确认已加载。

附带文件evals/evals.json

详细介绍

Rust 构建操作

使用 build-rust CLI 高效构建 Rust 工作区。

CLI 用法

./scripts/build-rust.sh dev        # Development (fast, debug symbols)
./scripts/build-rust.sh release   # Production (optimized, stripped)
./scripts/build-rust.sh profile   # Performance analysis (--timings)
./scripts/build-rust.sh check     # Fast type-check only
./scripts/build-rust.sh clean     # Artifact cleanup
./scripts/build-rust.sh release do-memory-core  # Build specific crate

构建模式

模式用例标志
dev开发迭代--workspace
release生产部署--release --workspace
profile性能分析--release --timings
check快速验证--workspace(仅类型检查)

磁盘空间优化(ADR-032)

Dev 配置可缩小 target/ 目录(约从 5.2 GB 降至 2 GB):

[profile.dev]
debug = "line-tables-only"    # ~60% smaller
[profile.dev.package."*"]
debug = false                 # No debug for deps
[profile.dev.build-override]
opt-level = 3                 # Faster proc-macros

清理:./scripts/clean-artifacts.sh quick|standard|full 转移:CARGO_TARGET_DIR=/mnt/fastssd/rslm-target ./scripts/build-rust.sh dev

错误处理

问题解决方法
超时使用 CARGO_BUILD_JOBS=4 cargo build 或 check
内存使用 cargo build -j 1,或通过 /usr/bin/time -v 监控
依赖冲突运行 cargo update,然后运行 `cargo tree -d
交叉编译运行 rustup target add x86_64-unknown-linux-musl

常见工作流

# Full CI Pipeline
./scripts/code-quality.sh fmt && ./scripts/code-quality.sh clippy --workspace
cargo build --release --workspace && cargo nextest run --all && cargo test --doc

# Quick Development
cargo check -p do-memory-core && cargo test -p do-memory-core --lib

# Production Release
cargo build --release --workspace && strip target/release/do-memory-mcp

故障排除

问题解决方法
增量缓存损坏cargo clean && cargo build
锁文件过期rm Cargo.lock && cargo generate-lockfile
Rust 版本不匹配rustup update stable && rustup default stable

验证清单

  • 构建完成且没有 clippy 警告(cargo clippy -- -D warnings)
  • 测试可编译,二进制文件剥离后小于 10MB,启动时间小于 100ms

参考资料

ADR-032(磁盘空间)、ADR-036(依赖去重)

评论

支持 Markdown