Göm menyn

TDDC76 Programmering och datastrukturer

Instruktioner för att komma igång


Följande steg måste utföras för att komma igång med C++ på våra system:

Starta en terminal

Detta görs via huvudmenyn ("Menu" längst ned till vänster eller upp till vänster). Välj programmet "MATE Terminal". Alternativt använd kortkommandot ctrl+alt+t från skrivbordet. Detta öppnar en terminal som ni kan skriva kommandon i.

Skapa mappar

Det är bra om man skapar mappar för laborationerna i denna kurs. Det görs i terminalfönstret. Börja med en mapp för hela kursen:

 mkdir TDDC76

Byt mapp i terminalen

Flytta dig till den nya mappen. I terminalen förflyttar ni er mellan mappar med kommandot "cd". För att flytta er relativt där ni för tillfället befinner er skriver ni endast den mapp ni vill flytta er till (mappen måste då ligga direkt under den ni befinner er i). I detta fall blir det:

 cd TDDC76 

Om ni istället vill förflytta er till mappen direkt (oavsett var ni befinner er bland era mappar) skriver ni:

 cd ~/TDDC76 

Observera dock att vi i detta fall vet att mappen ligger direkt under din hemmapp (som betecknas ~ i systemet).

Om ni gått in i fel mapp eller av annan anledning vill gå förlytta er bakåt i mapparna från där ni står skriver ni:

 cd .. 

Några extra mappar

Det är lämpligt att skapa en mapp per laboration (inuti mappen TDDC76) för att hålla reda på de filer som har med just den laborationen att göra. Ni kommer att få ganska många filer i vissa av mapparna senare.

Skapa en mapp för denna laboration:

 mkdir Lab0 

Flytta dig till den mappen:

cd Lab0

Observera att allt vi gör i terminalen endast sker just i denna. Om vi har flera terminaler uppe samtidigt kan dessa befinna sig i olika mappar.

Skapa ett program

För att kunna skriva program behövs en "editor". I denna labserie rekommenderar vi "Emacs" då denna har en hel del saker som gör att programskrivandet blir lite lättare. Det går att använda andra verktyg, fast vi kan tyvärr inte garantera att vi kan ge support ifall något inte fungerar.

För att skapa ett program med emacs skriver ni:

 emacs uppgift1.cc &

I den öppnade filen kan ni nu skriva er kod. När ni har skrivit något kan ni spara filen och kompilera filen i terminalen genom att skriva:

 g++ -std=c++17 -Wall -Wextra uppgift1.cc 

Detta skapar automatiskt en fil med namn a.out i samma mapp som uppgift1.cc. Detta är den körbara filen för ert program. Filen körs med kommandot:

./a.out

Smidig kompilering med alla kursens flaggor

I kursen förväntar vi oss att ni inte har några fel eller varningar som kompilatorn kan upptäcka åt oss. För att underlätta så du slipper skriva alla kompileringsflaggor varje gång kan du lägga in följande rad i filen ~/.bashrc (öppna filen i emacs så skapas den om den inte finns, skriv emacs ~/.bashrc & i terminalen). Lägg då in detta i filen, spara filen och öppna upp en ny terminal:

alias g++='g++ -std=c++17 -Wall -Wextra -pedantic -Weffc++ -Wold-style-cast -fmax-errors=3 -g '

Denna rad gör så att terminalen automatiskt byter ut texten 'g++' mot 'g++ -std=c++17 -Wall -Wextra -pedantic ... ' om det står i början av ett kommando. Detta betyder att det räcker att skriva 'g++ uppgift1.cc' för att kompilera med varningsflaggor (efter att terminalen startas om).

Snyggare formatering i emacs

För att få korrekt indentering (enligt Allman/BSD-stil) i emacs kan du lägga till följande i filen ~/.emacs (öppna filen i emacs så skapas den om den inte finns, skriv emacs ~/.emacs & i terminalen). Lägg då in detta i filen, spara filen och öppna upp er emacs-fil på nytt:

;; C/C++ settings
(setq c-default-style "bsd")
(setq c-basic-offset 4)
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))

;; Emacs settings
(global-linum-mode 1) ; always show line numbers


Sidansvarig: Eric Ekström
Senast uppdaterad: 2023-10-04