Codan il bardo Inviata 1 Febbraio 2007 Segnala Condividi Inviata 1 Febbraio 2007 Gente, ho bisogno di una mano. Purtroppo mi trovo a dover fare un programma in C utilizzando Unix/Linux. Premetto che non ho mai "toccato" Linux e l'unica cosa che ho fatto adesso è dare una letta ai comandi generali e come funziona Linux, ma sono in alto mare con la pratica. Devo far girare il tutto su Knoppix (quindi in live) e siccome ho poco tempo e non posso mettermi a leggere tutta la teoria e tutti gli ambaradam del SO volevo avere qualche dritta per sviluppare... ...un'applicazione Client/Server in linguaggio C su Unix/Linux Il progetto non deve essere nulla di particolare (ad esempio avevo pensato ad un messaggio criptato, mandato dal Client, che il server restituiva decriptato), ma contate che di Linux non so quasi nulla (di C ne so abbastanza). Ringrazio tutti per eventuali aiuti... -Codan- Link al commento Condividi su altri siti More sharing options...
Dusdan Inviato 1 Febbraio 2007 Segnala Condividi Inviato 1 Febbraio 2007 non capisco: vuoi un ambiente di sviluppo? tipo kdevelop? C o C++? Link al commento Condividi su altri siti More sharing options...
Codan il bardo Inviato 1 Febbraio 2007 Autore Segnala Condividi Inviato 1 Febbraio 2007 non capisco: vuoi un ambiente di sviluppo? tipo kdevelop? C o C++? il progetto deve essere in C Link al commento Condividi su altri siti More sharing options...
Dusdan Inviato 1 Febbraio 2007 Segnala Condividi Inviato 1 Febbraio 2007 il progetto deve essere in Cma cosa vuoi sapere precisamente? Link al commento Condividi su altri siti More sharing options...
Codan il bardo Inviato 1 Febbraio 2007 Autore Segnala Condividi Inviato 1 Febbraio 2007 ma cosa vuoi sapere precisamente? precisamente... TUTTO... come faccio a far partire il C quando mi trovo in Knopix e soprattutto, come potrò poi salvare il lavoro, visto che essendo in live, perdere tutto. In fine ... mi servirebbe una mano per l'applicazione Client / Server... ...sono in alto mare, lo so -Codan- Link al commento Condividi su altri siti More sharing options...
Dusdan Inviato 1 Febbraio 2007 Segnala Condividi Inviato 1 Febbraio 2007 a grandi linee: scrivi il programma in un file, diciamo client.c poi lo compili: gcc -o client client.c a questo punto ti crea un file che si chiama client. problemi: - non credo che knoppix abbia un compilatore (ma non ci giurerei); - una volta compilato te lo copi su una penna usb (sorgente e binario) piu` furbo sarebbe creare un file che si chiama Makefile, che e` fatto cosi`: #inizio all: client server client: client.c gcc -o client client.c server: server.c gcc -o server server.c #fine cosi` basta che da riga di comando scrivi make e lui ti compila tutto. Link al commento Condividi su altri siti More sharing options...
Codan il bardo Inviato 1 Febbraio 2007 Autore Segnala Condividi Inviato 1 Febbraio 2007 a grandi linee: scrivi il programma in un file, diciamo client.c poi lo compili: gcc -o client client.c gcc -o ... è un'istruzione??? problemi: - non credo che knoppix abbia un compilatore (ma non ci giurerei); - una volta compilato te lo copi su una penna usb (sorgente e binario) -Se Knoppix non ha un compilatore... dovrei installarlo ogni volta uno io??? -riconosce le penne usb... mi avevano detto di no piu` furbo sarebbe creare un file che si chiama Makefile, che e` fatto cosi`: #inizio all: client server client: client.c gcc -o client client.c server: server.c gcc -o server server.c #fine cosi` basta che da riga di comando scrivi make e lui ti compila tutto. Su questo c'ho capito poco... nel senso... non è molto chiaro (scusa per il fastidio Dus) -Codan- Link al commento Condividi su altri siti More sharing options...
Dusdan Inviato 1 Febbraio 2007 Segnala Condividi Inviato 1 Febbraio 2007 gcc -o ... è un'istruzione???gcc e` il compilatore C, -o client vuol dire che il binario si chiamera` client -Se Knoppix non ha un compilatore... dovrei installarlo ogni volta uno io???sarebbe un delirio -riconosce le penne usb... mi avevano detto di no vai tranquillo, le legge. Su questo c'ho capito poco... nel senso... non è molto chiaro (scusa per il fastidio Dus)allora questa parte la vedremo dopo. se vuoi puoi dare un'occhiata qui: http://en.wikipedia.org/wiki/Make ma forse per un programma cosi` semplice non vale la pena Link al commento Condividi su altri siti More sharing options...
Hiade Airik Inviato 2 Febbraio 2007 Segnala Condividi Inviato 2 Febbraio 2007 Codan, il problema è che fai fatica a muoverti nel sistema a quanto ho capito. Eccoti alcuni consigli: - Se devi sviluppare non usare una distro live. Installa VMWar Player (gratuito per far girare macchine virtuali) e installa o trova già fatta un'immagine con una distro con i pacchetti per sviluppatori. Ti posso consigliare OpenSUSE 10.x: se cerchi in giro (web o meglio ancora mulo), trovi le immagini già fatte e preinstallate per VMWare. La scarichi, ci fai doppio clic ed ecco una linux-box in Windows!!! Una volta compilato per linux non importa con che distro fai partire il programma, funziona purchè ci sia linux-x86 sotto, Knoppix, gentoo, ubuntu o quel che vuoi. - Una volta che hai l'ambiente stabile, ricorda che in linux (checchè se ne dica) l'interfaccia grafica non fa che rompere le palle. Devi abituarti all'idea di "riga di comando". - Per scrivere file di testo come il tuo client.c è necessario un editor di testo. Io stravedo per vi e odio emacs ma ti preavverto che o l'uno o l'altro sono da IMPARARE. Scordati di non bestemmiare usando vi la prima volta... una volta imparato VOLI!!! In soldoni se dovessi scrivere io il sorgente darei il comando $ vi client.c (ATTENZIONE: il segno $ davanti ai comandi, così come il segno #, identificano la shell, ovvero l'interprete dei comandi. NON SONO DA DIGITARE ma quando li vedi capisci che quel che stai leggendo è un comando da dare. Nel caso sopra scriveresti solo "vi client.c <invio>") - Il comando gcc che Dusdan citava non è che l'eseguibile del compilatore (gcc = GNU C Compiler). L'opzione -o ti crea un eseguibile compilato E linkato. Una volta salvato il tuo bel client.c puoi dare quindi il comando $ gcc -o client.c e ottenere nella stessa cartella un bel file chiamato client. Devi rendere client eseguibile (se non lo è già) con il comando $ chmod +x client e poi lanciare il client con $ ./client Per il resto però lasciati dire che se hai un'idea del C che viene da MS Visul Studio e se non hai idea della programmazione client/server, non è sul forum di DL che troverai una soluzione completa... Il problema sta qui: siccome ho poco tempo e non posso mettermi a leggere Purtroppo non c'è un consiglio o una dritta per fare un'applicazione c/s in un ambiente sconosciuto... C'è solo UN CASINO DI STUDIO da fare. E non ti nascondo che è veramente TANTO!!! Se DEVI farla, rassegnati al pensiero che c'è da studiare. Almeno IMHO... Non lo dico per scoraggiarti, anzi... almeno così non ti scoraggi se vedi che le cose si fan complesse! E' perche SONO complesse, credimi. In ogni caso, in bocca al lupo. Link al commento Condividi su altri siti More sharing options...
Dusdan Inviato 2 Febbraio 2007 Segnala Condividi Inviato 2 Febbraio 2007 concordo quasi su tutto, a parte il fatto che se deve impararsi vim diventa scemo. puo` tranquillamente usare un editor grafico e poi compilare a riga di comando (anche se vim e` in effetti potentissimo). Link al commento Condividi su altri siti More sharing options...
Hiade Airik Inviato 2 Febbraio 2007 Segnala Condividi Inviato 2 Febbraio 2007 concordo quasi su tutto, a parte il fatto che se deve impararsi vim diventa scemo. puo` tranquillamente usare un editor grafico e poi compilare a riga di comando (anche se vim e` in effetti potentissimo). Non hai torto alcuno! E poi le immagini suse/ubuntu/gentoo che si trovano in giro per vmware di solito hanno X e l'ambiente grafico quindi un editor di testo va di giustezza. C'è anche un altro caso... Codan, se usi Visual Studio normalmente puoi sempre sviluppare un'app c/s come la vuoi tu documentandoti velocemente su Mono, che è il porting di .NET per Linux (Dusdan, non svenire... funziona davvero! ^__^ e non è nemmeno male...). Questo ti sveltisce il lavoro se sei già pratico di MSVS. L'unica cosa è che non so se su Knoppix c'è "il runtime" (no, Dusdan, noooo!!! Respira!!!) di Mono di default... puoi provare ad indagare perchè gli accorgimenti per portare da .NET su Mono son veramente pochi! Link al commento Condividi su altri siti More sharing options...
Codan il bardo Inviato 2 Febbraio 2007 Autore Segnala Condividi Inviato 2 Febbraio 2007 WOW.... vi ringrazio dell'aiuto... ma da quello che avete scritto, la maggior parte non so di cosa si tratti (praticamente tutto LINUX & co.) Ammetto di avere anche dei limiti nel sistema di creazione e gestione c/s, quindi a quanto pare, dovrò per forza mettermi sotto. OK, speravo di fare una "furbata", ma a quanto pare... nada... TNX a entrambi -Codan- Link al commento Condividi su altri siti More sharing options...
Hiade Airik Inviato 2 Febbraio 2007 Segnala Condividi Inviato 2 Febbraio 2007 Ma de che Codan!? ^__^ Piuttosto, se hai bisogno di aiuto durante lo studio, mandami pure un MP. E' un periodo che sono sottissimo con il lavoro quindi guardo poco il forum, ma se hai bisogno sai dove trovarmi! A presto! Link al commento Condividi su altri siti More sharing options...
Messaggio consigliato
Crea un account o accedi per commentare
Devi essere un utente registrato per poter lasciare un commento
Crea un account
Crea un nuovo account e registrati nella nostra comunità. È facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora