关于 build-rust
build-rust 是用于构建和检查 Rust 工作区的命令行技能,提供开发、发布、性能分析和快速校验模式,并包含构建产物管理及常见问题排查指导。
主要功能
- 01开发与发布构建
- 02构建耗时分析
- 03快速检查工作区类型
- 04清理产物与磁盘空间建议
- 05排查构建问题
适用场景
- 01迭代开发 Rust 工作区
- 02准备优化后的生产构建
- 03检查构建性能
- 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