Newsgroup: it.comp.os.linux.debian
Titolo: ...passando a GCC invece...

Ciao a tutti,
dopo aver finalmente configurato il JDK della Sun, dovrei iniziare ad 
utilizzare dei compilatori per C/C++. Se faccio:
:/# find / -name *gcc* -print
esce fuori un botto di roba, ma tra queste - per istinto ;-) - sono 
andato su /usr/lib/gcc. All'interno c'era /i486-linux-gnu/4.1.2/, e 
dentro - finalmente!!! - il comando cc1 che, se non erro, dovrebbe 
essere il compilatore C, giusto?
Per testarlo ho creato un helloworld.c e ho provato a compilarlo con:
:/# ./cc1 helloworld.c -o helloworld.exe
ma mi da il seguente errore:
warning: incompatible implicit declaration of builtin function 'printf'
e questo mi pare abbastanza strano. Facendo un' altro find con "*.h" 
come argomento ho notato che non ci sono riferimenti che possano fare 
pensare alla standard library. Ho forse tralasciato di installare qualcosa?
Ciao e grazie,
Giulio
-- 
OnAir:


Anche questa la fai più difficile di quello che è.
gcc file.c -o file
Ovviamente il suffisso.exe è assolutamente irrilevante su un sistema Unix.
Gli include file stanno tutti sotto /usr/include.
Se hai installato il gcc allora avrai anche installato le libc6-dev,
altrimenti
apt-get install libc6-dev
Oppure c'è un errore di sintassi nel tuo codice C...
ciao
gl

 :/# ./cc1 helloworld.c -o helloworld.exe
lo stesso comando con gcc al posto di cc1 funziona, senza bisogno di
andare nella dir dell'eseguibile
ah,  rotfl per l'estensione dell'eseguibile!
 

 Oppure c'è un errore di sintassi nel tuo codice C...
Non credo.
Non perche' sia particolarmente bravo ed attento ma perche' il codice e' 
veramente banale! :-)
Ciao e grazie,
Giulio
-- 
OnAir: Joao Donato - "Outra vez"

 /usr/include non c'è alcun riferimento a libc6-dev...
Non confondere il compilatore (gcc) con i componenti di sviluppo di una 
libreria (lib*-dev).
In generale, mi sembra che tu abbia un po' di confusione in testa per 
quanto riguarda lo sviluppo sotto Linux.
Ti consiglierei di leggere qualcosa, ma non sviluppando in C da un pezzo 
non saprei di preciso cosa.
Bye.

 non saprei di preciso cosa.
Ho un po' di buon materiale, stai tranquillo. Il fatto è che non ho mai 
sviluppato in C sotto Linux, e quando l'ho fatto c'era il mio 
coinquilino all'università che si preoccupava di tutto ciò che 
riguardasse l'ambiente.
Ciao e grazie,
Giulio
-- 
OnAir: Selma Hernandes Quintet - "Berimbau"

 /usr/include non c'è alcun riferimento a libc6-dev...
Hai provato il comando apt-get che ti ho dato?
libc6-dev è un pacchetto.
Un pacchetto contiene uno o più file.
libc6-dev contiene alcuni file in /usr/lib e /usr/include
Attenzione: dentro /usr/include *NON* c'è nessun file chiamato libc6-dev
E' più "probabile" che funzioni così:
$ dpkg -L libc6-dev
Ovviamente tornando a Linux dopo anni in cui hai messo le conoscenze in
letargo, dovresti rispolverare un po' i concetti di base del filesystem e
del sistema di gestione di pacchetti (in questo caso dpkg/apt-get).
Ciao
gl

 del sistema di gestione di pacchetti (in questo caso dpkg/apt-get).
Vero!
Poi comunque alla fine ho risolto (e non ti dico quanto ci ho messo per 
accorgermi che il sistema andava a cercare i pacchetti dal CD che *non 
ho* perchè avevo sbagliato a configurare i repository... ;-) ).


> file
GP> bash: gcc: command not found
Hmmm... gcc È  il nome del compilatore, per  differenziarlo appunto da
cc che era di Unix. Mi sa che non è installato a dovere...
GP> Non credo.  Non perche' sia particolarmente bravo ed attento ma
GP> perche' il codice e' veramente banale! :-)
Hai incluso stdio.h ?
-- 
 /\           ___
/___/\_|_|\_|__|___Gian Uberto Lauri_____
  //--\| | \|  |   Integralista GNUslamico
\/                 e coltivatore diretto di Software
A Cesare avrei detto di scrivermi a	 | To Caesar I woul have said "emai me to
fn...@rat.vg
  (Lui cifrava in rot13) | 
fn...@rat.vg
  (He encrypted wit Rot13)

 Hai incluso stdio.h ?
Si, questo si! ;-)
Ciao,
Giulio
--
OnAir:

 # apt-get install gcc
consiglierei un
apt-get install build-essential
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.