02. Introducció a l'entorn de programació CodeLite

Última modificació per editor1 el 2024/03/04 16:27

1. Objectius

  • Entendre què és un entorn de programació.
  • Instal·lar un entorn de programació.
  • Crear un programa.
  • Executar un programa.

2. Introducció

Un entorn de programació és una aplicació informàtica que integra les diferents eines necessàries per a desenvolupar i implementar programes.

Encara que la instal·lació de l’entorn de programació no forma part directament de l’aprenentatge de la programació, és el primer pas que s’ha de fer per a començar a programar en qualsevol llenguatge de programació. Per a poder fer un programa necessitem bàsicament dos components:

  • Editor: pot ser qualsevol editor que ens permeti escriure text pla, o sigui, sense afegir cap tipus d’informació sobre format (negretes, alineació, tipus de lletra, etc.). Exemples d’aquests editors poden ser Notepad de Windows, el TextEdit de Mac, Emacs, o el més conegut, el Vi, que porta integrat qualsevol Linux/Mac.
  • Compilador: és un «programa» que analitza el nostre codi i el converteix en una representació binària que pugui ser executada per un ordinador. De la mateixa manera que hi ha molts editors diferents, també hi ha molts compiladors. El més conegut i utilitzat és el GNU (GCC), ja que el seu ús és gratuït, però hi ha els compiladors de Microsoft, i Mac també sol tenir els seus.

Hi ha una família d’aplicacions, conegudes per les seves sigles en anglès (IDE, ''Integrated Development Environment''), que ens permeten simplificar la programació, incorporant tots els elements anteriors i ajudant l’usuari en els processos d’escriptura dels programes (indicant possibles errors, aportant ajuda en els comandaments, etc.) i en la seva compilació (fent les crides al compilador amb tots els paràmetres). Hi ha molts exemples d’IDE: Eclipse, Netbeans, Microsoft Visual Studio.

En aquesta assignatura utilitzarem CodeLite com a IDE, ja que és un entorn multiplataforma (existeix en Windows, Mac i Linux), el seu ús és gratuït i la corba d’aprenentatge és baixa.

A fi d'evitar problemes amb la instal·lació i configuració de CodeLite, així com les ocasionades per les diferències entre compiladors C segons el sistema operatiu, es proporciona una màquina virtual amb tot allò necessari perquè pugueu completar el curs sense problemes. Una màquina virtual és una instal·lació d'un sistema operatiu que corre de forma emulada sobre una altra plataforma de programari. En aquest curs utilitzarem el programari de virtualització VirtualBox i una màquina virtual amb la distribució linux Lubuntu 22.04 LTS instal·lada. 

A continuació es detallen els passos que s'han de seguir a fi de tenir l'entorn de programació llest per ser utilitzat en les properes unitats. A més, veurem com crear i executar un programa utilitzant aquest entorn.

3. Instal·lació

A la pàgina de descàrregues del projecte VirtualBox, seleccionarem l'última versió per a la nostra plataforma i seguirem les instruccions d'instal·lació necessàries. En la majoria de casos serà suficient si baixem el paquet d'instal·lació (.exe, .dmg) i deixem els paràmetres per defecte.

El pas següent consistirà a descarregar la màquina virtual des de l'aula -> Eines de l'aula -> Màquina virtual, la qual conté tot l'entorn necessari de programació; la grandària del fitxer és d'aproximadament 5.3 GB.

Per poder fer la descàrrega de la màquina virtual cal que no tingueu activa una sessió de Google diferent de la UOC.

Si teniu activa una sessió de Google diferent de la UOC, es mostrarà un error 403:

IMG29.png

L'error es pot solucionar de diferents formes; a continuació se n'expliquen dues d'elles:

Opció 1

  1. Sortir del Campus.
  2. Accedir al correu de Gmail.
  3. Fer click sobre la vostra imatge de sessió de Google, a la part superior dreta.
  4. Seleccionar l'opció Tancar la sessió de tots els comptes.
  5. Entrar al Campus.
  6. Accedir a l'aula > descarregar la Màquina Virtual.
  7. Demanarà les credencials d'accés: fer la validació amb el vostre usuari i contrasenya de la UOC.
  8. Prémer sobre el botó de descàrrega de l'arxiu FP20222.ova.

Opció 2

  1. Obrir una finestra d'incògnit/privada al navegador web, per inactivar qualsevo sessió prèvia existent.
  2. Entrar al Campus.
  3. Accedir a l'aula > descarregar la Màquina Virtual.
  4. Demanarà les credencials d'accés: fer la validació amb el vostre usuari i contrasenya de la UOC.
  5. Prémer sobre el botó de descàrrega de l'arxiu FP20222.ova.

Una vegada baixada, anem a VirtualBox > Eines > Importa i seleccionem la màquina virtual que acabem de descarregar FP20222.ova:

IMG1.png

VirtualBox ens mostrarà una finestra amb l'estat del procés d'importació. El temps que trigui pot variar depenent de les característiques de cada màquina:

IMG3.png

Una vegada importada la màquina virtual, hauria d'aparèixer en la part de l'esquerra una nova màquina virtual denominada FP20222. Pot no ser la única màquina virtual si anteriorment ja en tenieu de creades:

IMG4.png

Farem clic a FP20222 i seleccionarem Paràmetres. A continuació, seleccionarem en Sistema l'opció Placa mare per ajustar la quantitat de memòria base de la nostra màquina virtual. En funció de la memòria RAM que tingueu, podreu augmentar-ne o disminuir-ne el valor. Es recomana 1024 MB perquè funcioni de la forma més fluïda possible.

IMG5.png

Podrem seleccionar també el nombre de Processador (CPU) que utilitzarem per a la màquina. Amb un és suficient:

IMG6.png

Seguint amb la configuració de la màquina, seleccionarem l'opció Pantalla > Pantalla i hi ajustarem la quantitat de memòria per a la targeta gràfica. Amb 16 MB ha de ser suficient ja que no utilitzarem aplicacions dins de la màquina virtual que facin un ús intensiu de la memòria gràfica.

IMG7.png

Acabada la part de configuració, farem clic en el botó OK En la pantalla principal de VirtualBox, seleccionarem la màquina virtual FP20222 i farem clic en el botó Inicia Si tot ha funcionat correctament, hauríem de poder entrar a la màquina virtual FP20222 i treballar en ella. L'usuari d'accés és uoc i la contrasenya és uoc.

IMG8.png

Recomanem llegir la Guia oficial de primers passos en VirtualBox per resoldre els dubtes puntuals que us puguin sorgir sobre el funcionament general de VirtualBox, els principis de virtualització i la importació de màquines virtuals.

4. Treballar amb Lubuntu

Lubuntu és una distribució derivada d'Ubuntu, també desenvolupada per Canonical, i que utilitza com a escriptori LXQt. Lubuntu es caracteritza per requerir força menys recursos dels habituals i ser més lleugera en comparació amb altres distribucions linux més exteses. El seu ús és molt intuïtiu i totes les opcions de configuració i les aplicacions instal·lades estan disponibles fent clic en la icona superior esquerra del logo de Lubuntu:

IMG9.png

A l'escriptori de Lubuntu trobareu l'icona de CodeLite amb la qual podreu accedir a l'IDE:

IMG10.png

5. Primers passos amb CodeLite

Per començar a programar cal revisar prèviament alguns conceptes propis de CodeLite i que es descriuen a continuació:

5.1. Workspace

El workspace de CodeLite serveix per a agrupar diferents projectes en un mateix espai de treball. Per exemple, podem tenir un workspace amb tots els programes de la xWiki de l'assignatura, i un altre amb tots els exemples de les FAQ de Fonaments de programació.

Només podem tenir un únic espai de treball obert en CodeLite: si en volem obrir un de nou cal tancar el que estava obert anteriorment.

Abans de crear un nou workspace, cal tancar el que tinguem obert des de l'opció Workspace -> Close Workspace. A continuació, creem el nou workspace des de Workspace -> New Workspace... -> seleccionem el tipus C__ -> indiquem el Name del workspace, i el Path on desarem el workspace i tots els projectes que acabarà contenint.

5.2. Project

Un workspace pot contenir un o més projects. Cada project equival a un programa en C, i conté tots els arxius d'un programa: els arxius de codi que anem escrivint, la informació sobre el seu tipus, la configuració necessària per a compilar el codi, etc.

Una vegada estem dins d'un workspace, creem un nou project des de l'opció Workspace -> New Project -> escollim el template Console: simple executable (gcc) -> indiquem el Name del project -> i escollim les següents opcions:

IMG24.png

Els valors de la captura són els que cal utilitzar en la màquina virtual FP20222 de l'assignatura. Si s'utilitzés un altre sistema operatiu, un altre tipus de compilador, etc. caldria canviar-los pels valors corresponents.

5.3. Compilar i executar

Cada project nou creat conté per defecte el programa Hello world, un programa molt senzill que, quan l'executem, mostra per pantalla el missatge "Hello World".

En el llenguatge C, per poder executar qualsevol programa cal que prèviament s'hagi compilat. A CodeLite podem compilar i executar un programa en un únic pas, des de l'opció Build -> Build and Run Project. Com a resultat veurem per pantalla la frase "Hello world":

IMG25.png

Comentem breument cadascun d'aquests passos:

  • Compilar: quan vulguem provar que el nostre programa està ben escrit, el podem compilar per a generar els arxius que posteriorment s’executaran. Quan es compila el programa, el compilador analitza què hem escrit i si està ben escrit sintàcticament. És molt important diferenciar entre que un programa estigui ben escrit i que funcioni. Per a fer una analogia amb l’escriptura en general, una cosa és escriure correctament, sense faltes d’ortografia, i una altra molt diferent és que el missatge que transmetem sigui el que volem.
  • Executar: per a saber si el nostre programa fa el que volem que faci, cal executar-lo. Arribar a poder executar un programa ens diu que l’entorn de programació està correctament instal·lat, però pot ser que el nostre programa no sigui correcte. Per a assegurar també aquesta segona part cal fer proves del seu funcionament. En el cas del ''hello'' ''world'', per a provar si funciona, s’ha de comprovar que el que s’escriu per pantalla és el missatge correcte. En altres casos caldrà afegir altres comprovacions, però això ja ho veurem més endavant.

Quan vulguem codificar un programa fet per nosaltres, només cal editar el codi del programa Hello World i posar-hi en el seu lloc el nostre. Tot seguit, ja el podrem compilar i executar.

5.4. Múltiples projects

És habitual que en el nostre workspace hi tinguem múltiples projects. Per poder compilar i executar un o un altre, cal que prèviament l'activem.

El project que està activat en un workspace és aquell que té el nom remarcat en negreta i cursiva. En el següent cas, el project que està actiu és Program1:

IMG26.png

Si volem executar el project Program3, només cal fer doble click sobre el seu nom, i veurem com passa a estar actiu:

IMG27.png

Si ara executem Build -> Build and Run Project, aquesta acció s'aplicarà sobre el programa Program3 actiu:

IMG28.png

Recordeu que compteu amb l’ajuda del consultor del laboratori si teniu problemes amb l'entorn de programació.

6. Repositori d'exercicis de la xWiki a CodeLite

La màquina virtual FP20222, a part de contenir CodeLite preparat per funcionar, també inclou un workspace amb una gran quantitat dels exemples que s'aniran comentant als diferents mòduls de la xWiki. Per accedir a aquest workspace únicament cal entrar a CodeLite -> Workspace -> Open workspace -> i escollir l'arxiu /home/uoc/Documents/codelite/workspaces/FP_examples/FP_examples.workspace :

IMG11.png

A continuació ja podreu revisar, executar, editar i modificar qualsevol dels exemples que conté:

IMG12.png

Els exemples segueixen la nomenclatura MM_EX, on MM=mòdul de la xWiki i EX=número d'exemple dins del mòdul. Per exemple, 05_02 fa referència al segon exemple del cinquè mòdul de la xWiki.

7. Compartir arxius entre FP20222 i host

Es pot donar el cas que necessitem copiar dades entre la màquina virtual FP20222 i el sistema operatiu principal del nostre ordinador (host). Una possible forma de fer-ho és mitjançant una carpeta compartida, com s'explica a continuació.

Amb la màquina virtual FP20222 aturada, la seleccionem i accedim als seus Settings:

IMG13.png

A continuació accedim a la opció Shared Folders:

IMG14.png

Prèviament haurem d'haver creat al nostre ordinador la carpeta que volem compartir amb amb la màquina virtual FP20222. Indiquem aquesta carpeta com a Folder Path, li donem un nom a Folder Name amb la que la identificarem dins de FP20222 i marquem l'opció Auto-mount :

IMG15.png

Una vegada definida la carpeta compartida, arranquem la màquina virtual FP20222. A l'escriptori es mostra ara una nova carpeta; en aquest exemple s'anomena sf_FP perquè el Folder Name definit ha estat FP. Per poder-la utilitzar, abans li haurem de donar uns permisos a l'usuari uoc; accedim a System Tools -> LXTerminal :

IMG16.png

Executem la comanda sudo adduser uoc vboxsf, i a continuació indiquem la contrasenya uoc (al introduir-la és normal que no es mostri per pantalla):

IMG17.png

A continuació reiniciem completament la màquina virtual FP20222 per activar els canvis. Una vegada hagi arrancat ja podrem utilitzar la carpeta:

IMG18.png

En aquest moment, qualsevol arxiu que copiem dins d'aquesta carpeta, ja sigui des de la banda del host o bé de la banda de la màquina virtual FP20222, serà accessible des dels dos entorns.

8. Com entregar un workspace

En els primers exercicis que programarem treballarem únicament amb un arxiu .c. Aquesta situació canviarà a mesura que avanci el curs, de manera que un programa estarà format per més d'un arxiu. En aquest apartat s'explica com preparar una entrega quan ens trobem en aquesta segona situació.

Una vegada tinguem el programa codificat, el primer pas és purgar del workspace tots els arxius obviables per realitzar l'entrega; anem a CodeLite -> Build -> Clean Workspace :

IMG19.png

Tot seguit, obrim un navegador des de Lubuntu -> Accessories -> PCManFM-Qt File Manager -> ens ubiquem on tenim la carpeta del workspace que volem comprimir -> botó dret del ratolí sobre la carpeta -> Compress... -> indiquem un nom i escollim l'extensió zip :

IMG20.png

Una vegada fet, ha d'haver generat l'arxiu comprimit .zip que conté tot el workspace:

IMG21.png

Ara ja podem realitzar l'entrega del workspace complet utilitzant l'arxiu .zip generat.

9. Com importar un workspace

En algunes activitats de l'assignatura es facilita un workspace de CodeLite com a part de l'enunciat, i que cal importar dins del nostre entorn CodeLite. Els passos a executar són:

  1. Copiar l'arxiu .zip facilitat a l'enunciat de l'activitat dins de la màquina virtual FP20222. Ho podem fer de dues formes:
    1.1 Copiar el .zip dins de FP20222 utilitzant la carpeta compartida entre FP20222 i host (veure apartat 7).
    1.2 Obrir un navegador web dins de FP20222 -> Campus UOC -> accedir a l'aula de teoria de FP -> descarregar l'activitat en local, dins de FP20222.
  2. Moure el .zip que ja tenim dins de FP20222 cap a la carpeta /home/uoc/Documents/codelite/workspaces/.
    És important no treballar amb workspaces ubicats a la carpeta compartida amb el host, ja que dóna problemes.
  3. Descomprimir el .zip: botó dret sobre el nom de l'arxiu -> Extract here
  4. Si a CodeLite tenim un workspace obert: CodeLite -> Workspace -> Close Workspace
  5. Des de CodeLite -> Workspace -> Open Workspace... -> accedir a la carpeta on hem descomprimit el .zip i escollir l'arxiu amb extensió .workspace

En aquest punt ja tindrem el workspace importat a CodeLite i ja es podrà començar a programar el codi pendent.

10. Problemes d'instal·lació

A continuació s'exposen els problemes més freqüents que es poden reproduir:

La màquina virtual no s'ha descarregat correctament

  • Descarregueu el fitxer des d'un ordinador connectat a internet via Ethernet (un cable de xarxa). Els talls de les connexions wifi poden provocar que les descàrregues s'interrompin.
  • Utilitzeu Mozilla Firefox per realitzar la descàrrega. Hem detectat que algunes versions de Google Chrome tallen la descàrrega del fitxer i aquest queda corrupte.

Eines de virtualització deshabilitades a la BIOS
Si en iniciar la màquina virtual es queda bloquejada tot mostrant una pantalla negra, apunta a que la virtualització del nostre PC no está activada

Per poder utilitzar VirtualBox és necessari que l'opció de virtualització estigui habilitada a la BIOS del nostre PC. Si utilitzeu Windows, podeu consultar ràpidament si la vostra màquina té la virtualització o no des de l'Administrador de tasques: si està enabled significa que està activada.

IMG22.jpg

En aquest cas el recurs de virtualització està desahabilitat a la BIOS del nostre host (PC). Per activar-lo:

  • Entreu en la BIOS del vostre PC. Per a cada model d'ordinador cal utilitzar una tecla o combinació de tecles diferent durant l'arrencada.
  • Habiliteu la virtualització. Busqueu en la BIOS una opció similar a Enable Virtualization o Enable VTx/VTd.
  • Guardeu els canvis, sortiu de la BIOS i reinicieu l'equip.

Error: Failed to send log

La màquina virtual es queda penjada en la següent pantalla i no continua:

IMG23.jpg

Solució:

  • Aturar la màquina virtual FP20222.
  • Anar a Paràmetres -> Pantalla -> Pantalla -> Controlador gràfic: canviar el valor VMSVGA per VBoxVGA.
  • Desar els canvis
  • Tornar a iniciar la FP20222.

11. Resum

En aquesta guía hem vist:

  • Què és un IDE.
  • Com instal·lar i configurar l'entorn de programació.
  • Com crear un nou espai de treball en CodeLite.
  • Com crear un programa en CodeLite.
  • Com executar un programa en CodeLite.
Etiquetes:
Creat per admin el 2018/07/19 14:04