build-and-compile
The build-and-compile skill provides strategies for detecting and executing appropriate build systems across multiple languages including C/C++, Python, Node.js, Rust, and Go. Use this when resolving compilation errors, missing dependencies, or determining the correct build commands for a project by identifying Makefiles, CMakeLists, pyproject.toml, package.json, Cargo.toml, or go.mod files.
git clone --depth 1 https://github.com/vstorm-co/pydantic-deepagents /tmp/build-and-compile && cp -r /tmp/build-and-compile/pydantic_deep/bundled_skills/build-and-compile ~/.claude/skills/build-and-compileSKILL.md
# Build & Compile Strategies for building code and resolving dependency issues. ## Build System Detection Check for build files in order: - `Makefile` → `make` (read it first to understand targets) - `CMakeLists.txt` → `cmake -B build && cmake --build build` - `pyproject.toml` / `setup.py` → `pip install -e .` - `package.json` → `npm install && npm run build` - `Cargo.toml` → `cargo build --release` - `go.mod` → `go build ./...` - No build system → compile directly (`gcc`, `g++`, `rustc`, etc.) ## Compilation Strategies ### C/C++ - Always read the Makefile/CMakeLists first - Common flags: `-O2 -Wall -lm -lpthread` - Missing headers → `apt-get install lib<name>-dev` - Linking errors → check library order (dependencies last: `-lfoo -lbar -lm`) ### Python - Use virtual environments when possible - `pip install -e .` for editable installs - Missing modules → check `requirements.txt`, `pyproject.toml` - Version conflicts → read the actual error, pin versions ### Multi-language projects - Build dependencies first (C libraries before Python bindings) - Check for Cython, SWIG, or FFI bridges - Environment variables often needed: `LD_LIBRARY_PATH`, `PYTHONPATH` ## Dependency Resolution 1. Read the FULL error message — the missing dependency is usually named 2. Search for the package: `apt-cache search <name>`, `pip search <name>` 3. Install the minimum needed — don't install everything 4. If a package is unavailable, check for alternatives or build from source ## Common Build Failures | Error | Likely Cause | Fix | |-------|-------------|-----| | `fatal error: foo.h: No such file` | Missing dev headers | `apt-get install libfoo-dev` | | `undefined reference to` | Missing library at link time | Add `-lfoo` flag | | `No module named 'foo'` | Missing Python package | `pip install foo` | | `command not found: make` | Build tools missing | `apt-get install build-essential` | | `version 'GLIBC_X.Y' not found` | Binary built for newer system | Rebuild from source |
Systematic code review for bugs, security, style, and performance
Comprehensive data analysis skill for CSV files using Python and pandas
Working with diverse data formats: binary, text, structured, and custom
Best practices for creating research diagrams with Excalidraw MCP tools
Systematic exploration of unknown environments before starting work
Git operations: commits, branches, PRs, and conflict resolution
Writing efficient code that handles large data and tight constraints
Refactor code to improve structure and maintainability