Metadata-Version: 2.1
Name: mse-task-generators
Version: 0.1
Summary: Набор генераторов программ для работы с отладчиками языка С
Home-page: UNKNOWN
License: UNKNOWN
Platform: UNKNOWN
Description-Content-Type: text/markdown
Requires-Dist: cfile (>=0.4.0)
Requires-Dist: wonderwords (>=2.2.0)

### Инструкция по развертыванию проекта

#### **Требования к системе**
- **ОС**: Linux (рекомендуется Ubuntu 20.04 LTS или выше)
- **Python**: версия 3.8 или выше
- **Компилятор**: GCC (GNU Compiler Collection)
- **Инструменты отладки и профилирования**:
  - Valgrind
  - GDB (GNU Debugger)
  - Gprof (GNU Profiler)

---

### **1. Установка зависимостей**
#### **Установка Python, PIP и venv**
```bash
sudo apt update
sudo apt install python3 python3-pip python3-venv
```

#### **Установка GCC, Valgrind, GDB, Gprof**
```bash
sudo apt install gcc valgrind gdb binutils
```

#### **Проверка версий**
```bash
python3 --version
pip3 --version     
python3 -m venv --help 
gcc --version
valgrind --version
gdb --version
gprof --version
```

---

### **2. Клонирование репозитория**
```bash
git clone https://github.com/moevm/mse1h2025-perf.git
cd mse1h2025-perf
```

---

### **3. Установка Python-зависимостей**
```bash
python3 -m venv venv  
source venv/bin/activate  
(venv) pip install -r requirements.txt
```

---

### **4. Запуск проекта**
#### **Примеры использования генераторов задач**
Проект поддерживает 3 генератора задач. Ниже приведены примеры их запуска.

#### **Генератор 1:**
**Создание задач на профилирование**
```bash
python3 -m generators.profiling1 1 init -o test.out
```
**Проверка задач на профилирование**
```bash
python3 -m generators.profiling1 1 check -b test.out -a f1
```
**Параметры**:
- `Первый параметр`: тип задачи (1, 2)
- `Второй параметр`: создание задачи или проверка ответа (init, check)
- С полным списком параметров можно ознакомиться в документации к генератору - [Документация](https://github.com/moevm/mse1h2025-perf/blob/main/generators/profiling1/README.md)

#### **Генератор 2:**
**Создание задач на утечку памяти**
```bash
python3 -m generators.leak_generator -m 1
```
**Проверка задач на утечку памяти**
```bash
python3 -m generators.leak_generator -m 2
```
**Параметры**:
- `--mode, -m`: создание задачи иили проверка ответа (1, 2)
- С полным списком параметров можно ознакомиться в документации к генератору - [Документация](https://github.com/moevm/mse1h2025-perf/blob/main/generators/leak_generator/README.md)

#### **Генератор 3:**
**Создание задач на отладку**
```bash
python3 -m generators.cycle_generator -m 1
```
**Проверка задач на отладку**
```bash
python3 -m generators.cycle_generator -m 2
```
**Параметры**:
- `--mode, -m`: создание задачи или проверка ответа (1, 2)
- С полным списком параметров можно ознакомиться в документации к генератору - [Документация](https://github.com/moevm/mse1h2025-perf/blob/main/generators/cycle_generator/README.md)

