Differences

This shows you the differences between two versions of the page.

Link to this comparison view

poo-is:ghidcomenzilinux [2020/09/09 00:17]
ruben_gilian.udroiu
poo-is:ghidcomenzilinux [2020/09/09 01:01] (current)
ruben_gilian.udroiu
Line 88: Line 88:
 Exemplu: daca apelam chmod 756 program.cpp inseamna ca utilizatorul principal are drepturi depline (4+2+1), grupul de utilizatori are permisiuni de citire si stergere (4+1), iar pentru others avem permisiune de citire si scriere(4+2). Daca in loc de 6 aveam 0, insemna ca revocam toate permisiunile pentru others asupra fisierului ,,​program.cpp"</​note>​ Exemplu: daca apelam chmod 756 program.cpp inseamna ca utilizatorul principal are drepturi depline (4+2+1), grupul de utilizatori are permisiuni de citire si stergere (4+1), iar pentru others avem permisiune de citire si scriere(4+2). Daca in loc de 6 aveam 0, insemna ca revocam toate permisiunile pentru others asupra fisierului ,,​program.cpp"</​note>​
 Mai multe informatii despre aceasta comanda [[https://​www.howtoforge.com/​tutorial/​linux-chmod-command/​|in acest link.]] Mai multe informatii despre aceasta comanda [[https://​www.howtoforge.com/​tutorial/​linux-chmod-command/​|in acest link.]]
 +== sudo ==
 +Comanda **sudo** (substitute user do) permite utilizatorului sa aiba privilegii de **root** (high level). Este recomandat sa evitam pe cat de mult posibil utilizarea comenzilor folosind sudo pentru ca, in anumite circumstante,​ putem sa provocam avarii sistemului de operare. In cadrul laboratorului de POO nu o sa abuzam aceasta comanda. ​
 +<code bash>
 +sergiu@SERGIU:/​mnt/​c/​Users$ sudo ls
 +[sudo] password for sergiu: ​
 +'All Users' ​  ​Default ​ '​Default User' ​  ​Public ​  ​desktop.ini ​  sergi
 +</​code>​
 +Mai multe informatii despre aceasta comanda[[https://​man7.org/​linux/​man-pages/​man8/​sudo.8.html|in acest link.]]
 +== apt-get install [nume] ==
 +Aceasta comanda este folosita pentru a instala un anumit pachet (exemple: sublime, chrome etc.). Deoarece un element strain este vazut ca un eventual ,,​pericol"​ pentru sistemul de operare, trebuie sa fortam sistemul sa execute aceasta comanda, de aceea trebuie sa folosim comanda **sudo**.
 +<code bash>
 +sergiu@SERGIU:/​mnt/​c/​Users$ sudo apt-get install sublime-text
 +[sudo] password for sergiu: ​
 +Reading package list... Done
 +</​code>​
 +
 +==== GNU Compiler ====
 +Sistemul de operare Linux este prevazut un compilator care, la inceput, suporta doar limbajul C. Cu timpul, GNU Compiler, s-a extins si ofera suport si pentru limbajele C++, Java, Fortran, Objective-C. ​
 +Daca nu avem preinstalat acest compilator pe versiunea noastra de Linux il putem obtine folosind comanda:
 +<note important>​sudo apt-get install g++</​note>​
 +In decursul laboratorului de POO o sa avem nevoie de un tool suplimentar care automatizeaza procesul de compilare a aplicatiilor (cu ajutorul makefile-urilor),​ **GNU Make**.
 +<note important>​sudo apt-get install make</​note>​
 +<​note>​Pentru a compila un program in C folosim **gcc**, iar pentru a compila un program in C++ folosim **g++**.</​note>​
 +=== Exemplu de utilizare ===
 +Presupunem ca avem programul ,,​poo.cpp"​ care contine
 +<code c++>
 +#include <​iostream>​
 +using namespace std;
 +int main () {
 +for (int i = 0; i < 3; i++)
 +    cout << "Hello world of OOP!" << endl;
 +return 0;
 +}
 +</​code>​
 +== Etapa de compilare ==
 +<code bash>
 +poo@is:/​laborator g++ poo.cpp
 +poo@is:/​laborator ls
 +poo.cpp a.out
 +</​code>​
 +Observam ca in urma compilarii am obtinut executabilul **a.out** deoarece nu i-am impus un nume, iar compilatorul i-a atribuit unul by default. Pentru a denumi sugestiv executabilul o sa folosim extensia **-o**.
 +<code bash>
 +poo@is:/​laborator g++ poo.cpp -o main
 +poo@is:/​laborator ls
 +poo.cpp main
 +</​code>​
 +== Rularea executabilului ==
 +<code bash>
 +poo@is:/​laborator g++ poo.cpp -o main
 +poo@is:/​laborator ls
 +poo.cpp main
 +poo@is:/​laborator ./main
 +Hello world of OOP!
 +Hello world of OOP!
 +Hello world of OOP!
 +poo@is:/​laborator
 +</​code>​
 +<note important>​Daca avem de compilat mai multe programe, procedam astfel:
 +
 +//g++ program1.cpp program2.cpp program3.cpp program4.cpp -o main//
 +
 +In cazul in care lucram cu fisiere de input/​output,​ acestea trebuie introduse ca argumente in linia de comanda delimitate de cate un spatiu. ​
 +
 +//./main [nume_fisier1] [nume_fisier2] [nume_fisier3]//</​note>​
 +
poo-is/ghidcomenzilinux.1599599867.txt.gz · Last modified: 2020/09/09 00:17 by ruben_gilian.udroiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0