86 lines
2.1 KiB
Markdown
86 lines
2.1 KiB
Markdown
# BCSSolver
|
|
|
|
BCSSocket (Bottler Client-Server Socket)
|
|
|
|
## Tabla de contenidos
|
|
- [Requisitos <a name="requisitos"></a>](#requisitos-)
|
|
- [Compilación <a name="compilación"></a>](#compilación-)
|
|
- [Ejecución <a name="ejecución"></a>](#ejecución-)
|
|
- [Testeos <a name="tests"></a>](#testeos-)
|
|
- [Limpieza <a name="limpieza"></a>](#limpieza-)
|
|
|
|
## Requisitos <a name="requisitos"></a>
|
|
|
|
Debe instalar gcc y make. Estos se encuentran disponibles en el repositorio de la vasta mayoría de distribuciones de Linux/macOS.
|
|
|
|
Debian/Ubuntu: `apt install gcc make`\
|
|
macOS (con [homebrew](https://brew.sh/)): `brew install gcc make`
|
|
|
|
Si tiene otra distribución consulte cómo hacerlo.
|
|
|
|
## Compilación <a name="compilación"></a>
|
|
|
|
Para compilar todos los archivos se debe hacer:
|
|
|
|
```bash
|
|
make all
|
|
```
|
|
|
|
## Ejecución <a name="ejecución"></a>
|
|
|
|
Ahora, tendrá dos ejecutables: `client` y `server`. Note que primero debe correr el `server` y luego conectarse con el `client`.
|
|
|
|
```bash
|
|
./server
|
|
```
|
|
|
|
y en otra terminal
|
|
|
|
```bash
|
|
./client
|
|
```
|
|
|
|
Debe notar que el `server` usará el puerto 8080 de localhost (por default) por lo que si tiene algún otro servidor en ese puerto debe cerrarlo antes de correrlo. Asimismo, si usted quiere modificar este puerto y/o la dirección del servidor lo puede hacer mediante:
|
|
|
|
```bash
|
|
./server -a ${address} -p ${port}
|
|
```
|
|
|
|
## Testeos <a name="tests"></a>
|
|
|
|
En orden de realizar un análisis estático del sistema usted debe tener instalado [cppcheck](http://cppcheck.net/) y [pvs-studio](https://pvs-studio.com/). Luego, puede correrlos con:
|
|
|
|
```bash
|
|
make test
|
|
```
|
|
|
|
Por último, si quiere hacer un análisis dinámico (usando [valgrind](https://valgrind.org/)) puede hacerlo mediante:
|
|
|
|
```bash
|
|
valgrind ./server
|
|
```
|
|
|
|
y en otra terminal
|
|
|
|
```bash
|
|
valgrind ./client
|
|
```
|
|
|
|
## Limpieza <a name="limpieza"></a>
|
|
Si desea borrar los archivos creados luego de la compilación debe correr:
|
|
|
|
```bash
|
|
make clean
|
|
```
|
|
|
|
Note que si, además, quiere borrar el output de los tests (de PVS-Studio específicamente), lo puede hacer con:
|
|
|
|
```bash
|
|
make cleanTest
|
|
```
|
|
|
|
# Autores
|
|
- Barmasch, Juan Martín (61033)
|
|
- Bellver, Ezequiel (61268)
|
|
- Lo Coco, Santiago (61301)
|