Newsgroup: it.comp.os.linux.development
Titolo: Programmazione grafica: KDE e GNOME + domande varie

Salve a tutti,
sono un programmatore assolutamente nuovo del mondo linux ... ho una domanda
per voi: immagino che esista una serie di system call o comunque un set di
funzioni per la programmazione a maschere su Linux, vorrei sapere dove posso
trovare documentazione in questo senso. (per intenderci quello che sul Win32
[spero che nessuno si arrabbi :)] farei con CreateWindow() etc...).
Domanda: ciascun server grafico (spero si chiami così) utilizza un set di
funzioni separate? La mia applicazione dovrà funzionare solo su Gnome
piuttosto che KDE o altro server grafico?
Infine: mi sapreste consigliare un buon libro o qualche guida on-line che mi
aiuti in questo senso (se ciascun Server grafico ha un suo set di funzioni
privato preferirei studiare KDE)? Non vorrei tornare a scrivere programmi a
linea di comando come nel vecchio Dos ... :)
Anticipatamente grazie
--
- Carlo -
c.b...@libero.it

piuttosto che KDE o altro server grafico?
Sotto Linux usi XFree che e' un server grafico: lo programmi
attraverso un set di Api apposite.
Queste API pero' sono discretamente complesse.
KDE e Gnome si appoggiano su un ulteriore strato software (piu'
semplice da usare) composto da librerie grafiche multipiattaforma e da
funzioni specifiche (almeno per Gnome, KDE non lo conosco molto).
Nel caso di KDE le librerie grafiche si chiamano QT, sono sviluppate
in C++ dalla Trolltech e sono free se le utilizzi sotto Linux (ma mi
pare tu non possa svilupparci applicazioni commerciali).
Nel caso di Gnome e' tutto sotto licenza GPL (o era LGPL, non sono
sicuro). Le librerie grafiche sono sviluppate in C e si chiamano GTK
(ora siamo alla versione 2)... in piu' ci sono funzioni specifiche di
Gnome e svariate altre librerie (quasi tutte sotto GPL o LGPL).
Trovi maggiori dettagli sui siti di Gnome e KDE (e sui siti delel GTK
e delle QT per le specifiche librerie). Se cerchi su google trovi al
primo tentativo :)
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."



Il server grafico è unico ed è XFree86. Volendo potresti programmare
direttamente X, ma in genere si utilizzano delle librerie di più alto
livello. Ne esistono molte. Quelle che mi vengono adesso in mente sono 
Qt (utilizzata da KDE), GTK (utilizzata da Gnome), Lesstif (sono una 
copia delle Motif molto utilizzate in ambienti Unix), Fltk (quella che 
uso: è piccola e semplice da utilizzare, inoltre può essere compilata 
anche sotto Windows), Vdk e wxWindow. Ma sicuramente ne esistono anche 
altre. Alla seguente pagina potrai trovare più informazioni e i link per
molte librerie:
http://sal.kachinatech.com/F/5/
Quello che è importante è che se usi ad esempio Qt, non sei obbligato ad
utilizzare il tuo programma solo sotto KDE, così come se usi GTK il tuo
programma non si limita a funzionare solo sotto Gnome. L'importante è
però che le librerie, se sono linkate dinamicamente, siano installate
sui sistemi dove deve girare il programma.
-- 
Per rispondere via email rimuovere 123

 sui sistemi dove deve girare il programma.
approfitto per farti una domanda: tu dici che se sono linkate
dinamicamente le librerie devono essere presenti nel sistema dove viene
fatto girare il programma, e invece per linkarle non dinamicamente
(staticamente ?) come bisogna fare ?

 questo e' richiesto dalla  licenza GPL. 
Non deve necessariamente rilasciare i sorgenti del programma, perche'
usare codice sotto LGPL non lo impone.
Massimiliano