Newsgroup: it.comp.macintosh
Titolo: Programmare in C

Ciao a tutti,
per un esame universitario di Sistemi Operativi debbo realizzare un
applicazione in C che giri in ambiente *nix. La professoressa ha detto
che va benissimo realizzarla anche su Mac dato che è appartenente alla
stessa "famiglia".
Premetto che l'applicazione sarà testiale, quindi senza utilizzo
dell'interfaccia grafica.
A questo punto avrei bisogno di qualche consiglio e/o aiutino.
1) Il compilatore dovrebbe essere il famoso GCC, giusto?
2) Compilando su Mac, il file potrebbe essere eseguito anche sotto
Linux? Con quali modifiche?
Grazie mille.
Stefano

 Linux? Con quali modifiche?
Il file *eseguibile* non potrebbe essere eseguito (ovviamente) su Linux
x86. Ma sono sicuro che tu non intendevi questo, non ha senso.
Puoi *compilarlo* anche sotto GNU/Linux. E se il programma č scritto
secondo standard non cambierai una riga di codice. 
Se č qualcosa di un minimo serioso prendi in considerazione gli
autotools.
-- 
L'idiozia trascende il mezzo con cui viene espressa.

Grazie per la risposta, ma visto che non mi sono espresso in maniera
molto ortodossa provo a fornire qualche chiarimento.
Allora, realizzo l'applicazione in C, la compilo su Mac, funziona
(speriamo) --> sono contento.
Volendo far girare la stessa applicazione su una diversa macchina *nix,
ad esempio Linux X86, ricompilo sempre con GCC il sorgente da da Linux
con il suo compilatore. Seguendo questa procedura dovrei apportare
delle modifiche al codice sorgente considerando che non viene
implementata interfaccia grafica ma solo input/output da terminale (o
consolle)?
Di confusione ne ho tanta dato che non ho mai fatto una cosa del
genere, per cui vi chiedo di perdonare la mia ingenuità nel fare
alcune affermazioni di "dubbia" validità :))))
Grazie di nuovo.
Stefano

 consolle)?
In linea di massima direi di no.
d

 consolle)?
No. Non dovresti (a meno di non andare ad usare API relativamente
tipiche). Ma con un po' di docuemntazione vedi di usare solo roba POSIX
e sei a posto. Sul man c'č scritto.
Inoltre la GUI in se e per se non č un problema. Con QT o wx riesci
senza dubbio a fare un'applicazione cross-platform. Anche con GTK, ma
sotto MacOS girerebbe in X11.
Ci sono anche un altro sbordello di toolkit che fanno sta fola, non sto
qui a menarla.


 succedere, sia se succedono cose che non dovrebbero succedere.
Giusto.  Comunque compila con le opzioni Wall e pedantic, e gia` hai una
discreta garanzia di portabilita` (con le altre precauzioni che dici).
Alex

 Alex
Io metterei anche un -O2, tanto per gradire. :)
-- 
Yoda of Borg am I! Assimilated shall you be! Futile resistance is, hmm?

Quotare correttamente? Mi fai capire?
Per tutto il resto siete gentili ma non ci stò capendo niente...

 Io metterei anche un -O2, tanto per gradire. :)
Quello accelera, ma non cambia la portabilita`!-)
Alex

 Quotare correttamente? Mi fai capire?
Se non è sufficiente vedere come fanno gli altri nel gruppo, ti do un
bel link:
http://www.freewebz.com/iosononiubbo/index1.htm
Se non funziona, cerca "quotare newsgroup" su google.


 Quello accelera, ma non cambia la portabilita`!-)
Chiaro, ma gia' che deve mettere dei flag al gcc tanto vale aggiungere
anche quello, son 3 caratteri :)


 anche quello, son 3 caratteri :)
Sempre chè tu non ti debba leggere un pezzo di assembly per fare
debug... nel caso te lo raccomando.
Io personalmente le ottimizzazioni le metto  solo alla fine. Prima
riempio di roba per il debug, assert e compagnia cantante.


 meno bruttina di prima ;-)))
Pesantina però... O_o
-- 
 
www.filacchione.it
 
 "If you're dumb, surround yourself with smart people. If you're smart,
  surround yoursef with smart people who disagree with you."

 puoi collassare i singoli pannelli cliccandoci sopra.
Graficamente, quelle bande nere mi sanno di lutto. I pannelli
collassabili... boh, non mi sono mai sembrati utili se non ricorda come
li lascio...


 A cosa credi che stia lavorando? ;-)
Tsk... sempre la solita scusa... ;P


 poi abbiamo sempre la faq 189 :-)
Vero. Ma è piccolina e molto "tenera". 
Sarebbe bello qualcosa tipo:
"se non quoterai correttamente tu e i tuoi figli fino alla 84
generazione soffrirete di fimosi".
