# ERROR: Backend subprocess exited when trying to invoke 'setup.py'.

- **ID:** `python/pip-fallback-to-legacy-setup-py`
- **Domain:** python
- **Category:** config_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

pip defaults to PEP 517 build isolation but the project's pyproject.toml missing build-system table, causing fallback to legacy setup.py which fails due to missing dependencies.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 3.10 | active | — | — |
| 3.11 | active | — | — |
| 3.12 | active | — | — |

## Workarounds

1. **Add build-system table to pyproject.toml** (95% success)
   ```
   Add to pyproject.toml:
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
   ```
2. **Use --no-build-isolation flag** (85% success)
   ```
   pip install --no-build-isolation <package>
   ```

## Dead Ends

- **Reinstalling setuptools globally with pip install --upgrade setuptools** — Global upgrade doesn't fix the build-time dependency issue caused by PEP 517 isolation. (70% fail)
- **Deleting pyproject.toml entirely** — Removing the file doesn't help; pip will still try to use legacy setup.py without proper environment. (90% fail)
