build-rust について
build-rust は、Rust ワークスペースのビルドと検査に使うコマンドラインスキルです。開発、リリース、性能分析、検証の各モードに加え、ビルド成果物の管理や一般的な問題の対処方法を扱います。
主な機能
- 01開発・リリースビルド
- 02ビルド時間の分析
- 03ワークスペースの高速型チェック
- 04成果物の整理と容量削減の案内
- 05ビルド問題のトラブルシューティング
活用シーン
- 01Rust ワークスペースの開発
- 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) - テストがコンパイルされ、バイナリは strip 後に 10MB 未満、起動時間は 100ms 未満
参考資料
ADR-032(ディスク容量)、ADR-036(依存関係の重複排除)
コメント
Markdown 対応