- Windows 10 (version 2004+) or Windows 11
- Docker Desktop (WSL2 backend enabled)
- At least 16GB RAM (8GB minimum usable)
- At least 50GB free disk space
- VS Code (optional, recommended)
Run in PowerShell (Administrator)
-
Install Docker Desktop with WSL2: https://docs.docker.com/desktop/windows/wsl/
-
Configure resources:
- Memory: ≥ 8GB
- CPUs: ≥ 4
-
Enable WSL Integration: Docker Desktop → Settings → Resources → WSL Integration → Enable Ubuntu-22.04
Verify installation:
bash docker run --rm hello-world
Run inside Docker container
bash export DEBIAN_FRONTEND=noninteractive export TZ=UTC apt-get update apt-get install -y tzdata
Run inside Docker container
bash wget https://github.com/YosysHQ/oss-cad-suite-build/releases/download/2025-03-01/oss-cad-suite-linux-x64.tgz tar -xzf oss-cad-suite-linux-x64.tgz echo 'export PATH="$(pwd)/oss-cad-suite/bin:$PATH"' >> ~/.bashrc source ~/.bashrc yosys --version
Run in PowerShell
bash git config --global core.autocrlf false git config --global core.eol lf git clone --recursive https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts
Run in PowerShell
bash docker ps docker cp C:\path\to\file <container_id>:/tmp/
Run in PowerShell
bash docker run -it -v //c/Users/YourName/OpenROAD-flow-scripts:/OpenROAD-flow-scripts ubuntu:22.04
Run inside Docker container
bash echo 'export PATH="$(pwd)/oss-cad-suite/bin:$PATH"' >> ~/.bashrc source ~/.bashrc docker commit <container_id> openroad-windows:latest docker run -it openroad-windows:latest
Run inside Docker container
bash cd /OpenROAD-flow-scripts/flow make DESIGN_CONFIG=./designs/nangate45/gcd/config.mk
- Install VS Code: https://code.visualstudio.com/
- Install Dev Containers extension
- Run container:
bash docker run -it -v //c/Users/YourName/OpenROAD-flow-scripts:/OpenROAD-flow-scripts openroad-windows:latest
- In VS Code press
Ctrl+Shift+P→ Select "Attach to Running Container" → Choose your container
Press Ctrl+Shift+P → "Dev Containers: Open Folder in Container" → Choose your project folder
Create .devcontainer/devcontainer.json:
json { "name": "OpenROAD Development", "image": "openroad/orfs:latest", "workspaceMount": "source=${localWorkspaceFolder},target=/OpenROAD-flow-scripts,type=bind", "workspaceFolder": "/OpenROAD-flow-scripts", "customizations": { "vscode": { "extensions": [ "ms-vscode.cpptools-extension-pack", "twxs.cmake" ] } }, "remoteUser": "root" }
Press Ctrl+Shift+P → "Dev Containers: Reopen in Container"
Use OSS CAD Suite (Step 3)
bash export DEBIAN_FRONTEND=noninteractive
bash docker run -it -e DISPLAY=<YOUR_IP>:0.0 openroad/orfs
Use WSL path: \\wsl$\Ubuntu\
bash wsl --export Ubuntu-22.04 D:\ubuntu_backup.tar wsl --import Ubuntu-22.04 D:\WSL\Ubuntu D:\ubuntu_backup.tar
- Ensure Docker Desktop is running
- Restart VS Code
- Check Dev Containers extension is installed
See: BuildWithWSL.md