El entorno de desarrollo del curso es un sistema Linux. Tenemos previstas varias formas de utilizarlo en vuestras computadoras.

1. La primera opción es correr una imagen de máquina virtual de Linux. Para aquellos que cuenten con sistema operativo Windows o iOS (en computadoras Apple con chip Intel) esta es la opción más recomendada. Esta máquina se abre con la aplicación VirtualBox, disponible de manera gratuita para casi todas las plataformas conocidas (Mac con chip Intel, Windows, Linux). La imagen ya tiene instaladas las aplicaciones que se utilizarán en el curso. Pueden descargar la imagen del siguiente link (dar botón derecho y descargar):

https://iie.fing.edu.uy/ense/asign/pie/pie.ova

Necesitan utilizar la aplicación VirtualBox. Pueden seguir el tutorial que armamos para ustedes en el siguiente link:

https://iie.fing.edu.uy/ense/asign/pie/TutorialVirtualBox2024.pdf

Una vez cuenten con VirtualBox y la imagen en cuestión, las credenciales de inicio de sesión son:

  • Usuario: pie
  • Contraseña: pie


2. Aquellos que ya dispongan de Linux en sus máquinas pueden directamente instalar las aplicaciones. Son herramientas maduras y muy estables, por lo que el utilizar distintas versiones no debería dar problemas:

  • GCC (GNU Compiler Collection, básico)
  • Make (GNU Make, básico)
  • GDB (GNU DeBugger)  / nemiver (interfaz gráfica opcional)
  • Valgrind (para depurar errores de manejo de memoria y punteros)
  • Un editor de texto plano cualquiera (por ejemplo Gedit, pero puede ser cualquier otro, por ej. VS Code, jedit, emacs, gvim)
  • Doxygen (documentador automático de código)
  • Bless (editor de archivos binarios)

Otros que pueden ser útiles son

  • rar, unrar (para abrir archivos RAR)

Todos estos paquetes pueden ser instalados en Ubuntu (en cualquiera de sus versiones, o Debian) por sus nombres de paquetes apt, corriendo los siguientes 2 comandos:

sudo apt update
sudo apt install gcc gdb valgrind nemiver make gcc-doc glibc-doc make-doc gedit-plugins doxygen rar bless libjpeg-dev libtiff5-dev libpng-dev libiio-dev


3. Aquellos que cuenten con computadoras con chip M1, M2 o M3 pueden trabajar localmente ya que no tiene soporte para Virtual Box. 
  • Compilador: ya cuenta con clang instalado. 
  • Make: ya viene incorporado. 
  • LLDB como debugger: ya viene instalado. 
  • Leaks (para depurar errores de manejo de memoria y punteros)
  • Un editor de texto plano cualquiera (por ejemplo Gedit, pero puede ser cualquier otro, por ej. VS Code, jedit, emacs, gvim)
  • Doxygen (documentador automático de código)
  • Bless (editor de archivos binarios)

    También será necesario instalar las bibliotecas 'jpeg', 'tiff' y 'png'. Para eso se recomienda el uso de homebrew que se puede instalar con el siguiente comando:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

    Luego, cada biblioteca se instala corriendo "brew install lib" (sustituyendo "lib" por jpeg, tiff o png).