grade.py: не падать на машине без компилятора — ПРОПУСК с причиной, авто-отключение санитайзеров, .exe под Windows, WSL-подсказка
This commit is contained in:
@@ -20,6 +20,24 @@
|
||||
- `grade.py` — автопроверка задач (ASAN/UBSAN, таймауты, PASS/FAIL + полный лог);
|
||||
- `questions_export.txt` — вопросы квиза текстом.
|
||||
|
||||
## Требования
|
||||
|
||||
- **Linux / WSL / macOS**: `g++` (C++17), `gcc`, `gdb`, `python3`, `bash`, `awk`.
|
||||
Одной строкой в Ubuntu: `sudo apt update && sudo apt install -y build-essential gdb python3`.
|
||||
- **Windows-native (MinGW-w64/clang)**: работают задачи 01–06 и 10–13 (нужен `g++` в PATH),
|
||||
а также карточки `facts_drill.py`. Задачи **07 (epoll), 08 (bash/awk) и 09 (ASAN+gdb)**
|
||||
под Windows-native не запускаются — они помечаются `ПРОПУСК`, а не `FAIL`.
|
||||
Полный прогон — в WSL:
|
||||
```powershell
|
||||
wsl --install -d Ubuntu
|
||||
```
|
||||
```bash
|
||||
sudo apt update && sudo apt install -y build-essential gdb python3
|
||||
cd /mnt/d/Projects/edu/eduplan-cpp-eltex/diag && python3 grade.py
|
||||
```
|
||||
- Если компилятора нет совсем, `grade.py` больше не падает трейсбеком: он печатает
|
||||
`ПРОПУСК` с причиной по каждой задаче и подсказку, что доставить.
|
||||
|
||||
## Как начать
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user