Compilatori: Build-essential
Andare ad installare il pacchetto build-essential, per chi non lo sapesse, significa installare tutte quelle librerie che girano intorno al mondo del C/C plusplus.
Queste librerie sono utilizzate dai programmare, per C o C++, al fine di creare un programma.
Facciamo un esempio, vogliamo stampare a video un numero, quanto il computer ce lo chiede. La sintassi di un programma scritto in C è la seguente (fig. 1):
#include <stdio.h>
printf(“Valore letto:%d\n”, value);
return 0;
}
Ed un programma scritto in C++ (fig. 2):
#include <iostream>
using namespace std;
int main(){
int value;
cout << "Dammi un numero. ";
cin >> value;
cout << "Valore letto: " << value << endl;
return 0;
}
Per poter eseguire questi programmi, occorre avere installato nel nostro computer le librerie, chiamate «header», per intenderci quelle che finiscono di solito con il .h
E si trovano nella nostra KDE, alla path: /usr/include/, per quanto riguarda il C; e alla path /usr/include/c++/7/, per quanto riguarda il C++.
Ecco il file header di iostream:
#ifndef _GLIBCXX_IOSTREAM
#define _GLIBCXX_IOSTREAM 1
#pragma GCC system_header
#include <bits/c++config.h>
#include <ostream>
#include <istream>
namespace std _GLIBCXX_VISIBILITY(default){
_GLIBCXX_BEGIN_NAMESPACE_VERSION
/**
* @name Standard Stream Objects
*
* The <iostream> header declares the eight <em>standard stream
* objects</em>. For other declarations, see
* http://gcc.gnu.org/onlinedocs/libstdc++/manual/io.html
* and the @link iosfwd I/O forward declarations @endlink
*
* They are required by default to cooperate with the global C
* library's @c FILE streams, and to be available during program
* startup and termination. For more information, see the section of the
* manual linked to above.
*/
//@{
extern istream cin; /// Linked to standard input
extern ostream cout; /// Linked to standard output
extern ostream cerr; /// Linked to standard error (unbuffered)
extern ostream clog; /// Linked to standard error (buffered)
#ifdef _GLIBCXX_USE_WCHAR_T
extern wistream wcin; /// Linked to standard input
extern wostream wcout; /// Linked to standard output
extern wostream wcerr; /// Linked to standard error (unbuffered)
extern wostream wclog; /// Linked to standard error (buffered)
#endif
//@}
// For construction of filebuffers for cout, cin, cerr, clog et. al.
static ios_base::Init __ioinit;
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
#endif /* _GLIBCXX_IOSTREAM */
...quindi occorre installare il compilatore, sul nostro pc, cioé GNU-Gcc:
"GNU, che sta per "Gnu's Not Unix" (Gnu Non è Unix), è il nome del sistema[Richard Stallman, Dal manifesto GNU, GNU]
software completo e Unix-compatibile che sto scrivendo per distribuirlo
liberamente a chiunque lo possa utilizzare. Molti altri volontari mi
stanno aiutando. Abbiamo gran necessità di contributi in tempo, denaro,
programmi e macchine."
Apriamo il terminale della nostra KDE e scriviamo:
$ sudo apt install build-essential
Fatto questo diamo la password e verranno installati tutti i compilatori.
Adesso per eseguire il programma, provate a copiare il programma scritto in C++ di fig. 2, e incollatelo in kate. Prendo il file in c++, perché mi piace lavorare con Qt/C++.
Poi salvate il programma nella cartella di home con estensione .cpp, ad esempio dammi.cpp.
Dopo di ché aprite il terminale e spostatevi nella cartella dove contiene il programma, scrivendo ad esempio:
$ cd /home/nome_utente/Documenti/
Fatto questo, assicuratevi di avere il programma in documenti, scrivendo:
$ ls
che vi listerà a terminale cosa contiene la cartella. Poi compiliamo il programma con:
$ g++ dammi.cpp
Poi scriviamo:
$ ./a.out
...che sarebbe il file di output, che in mancanza di un nome specifico, viene scritto di default a.out. E verrà eseguito sul terminale il programma, chiedendovi un numero e poi ve lo stampa a video.
...questo è solo un esempio, per come il nostro Linux lavora con i c/c++, nell'universo Unix. Il Gcc è utilizzato in moltissimi ambienti. E sono stato contento di avere scritto questo per il mio blog.
Spero che chi legge questo post, possa interessarsi alla programmazione in c++.
Se volete trovare info su c++, andate in qui.
Nessun commento:
Posta un commento