Consiglio sull'utilizzo di KDevelop

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
elendil
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 9 ago 2008, 12:39
Nome Cognome: Valerio
Slackware: 14
Kernel: 3.2.29
Desktop: xfce
Distribuzione: SalixOS
Località: Carpineto Romano (RM)

Consiglio sull'utilizzo di KDevelop

Messaggio da elendil »

Salve, sono poco pratico dell'utilizzo degli autotools e mi sono trovato costretto ad usare KDevelop che, a quanto ho visto fin'ora, fa buona parte del lavoro. I file che ho scritto fino ad ora li ho organizzati in modo da avere gli header con le definizioni di classi e funzioni in una directory chiamata "include", le implementazioni in un'altra che ho chiamato (in modo originale non c'è che dire...) "src" e un paio di classi di prova in una chiamata "examples". Quando ho usato KDevelop, ho creato un nuovo progetto e i sottoprogetti relativi ad esempi e alle librerie che sto cercando di sviluppare, a cui poi ho aggiunto il lavoro svolto fino a quel momento. Il problema è che mi ha praticamente costretto a fondere "src" con "include" in una unica directory. C'è un modo per mantenere la struttura della directory originaria senza ricorrere ad espedienti come i collegamenti simbolici e nel contempo mantenere visibili a KDevelop gli headers nell'ambito del sottoprogetto?
Sono sicuro che mi sto perdendo in un bicchier d'acqua :roll:
Vi ringrazio in anticipo
"In wars boy, fools kill other fools for foolish causes." (R. Jordan, The Wheel of Time book 1)

Avatar utente
ildiama
Linux 3.x
Linux 3.x
Messaggi: 536
Iscritto il: mar 27 dic 2005, 16:49
Slackware: mine
Kernel: 2.6.alto..
Desktop: KDE4
Località: Senigallia
Contatta:

Re: Consiglio sull'utilizzo di KDevelop

Messaggio da ildiama »

Kdevelop o no, credo che il tuo sia un problema di "concetto" più che di autotools.. Solitamente si utilizza la dir "include" per inserire classi, implementazioni, librerie di funzionalità che supportano la tua applicazione, ma non la implementano direttamente. Esempio (banalissimo): la mia applicazione gestisce figure geometriche. Implemento triangolo e rettangolo in include e la mia applicazione (che li usa) in src.
Dividere le dichiarazioni dalle implementazioni è una pratica che non si usa, almeno in fase di programmazione.
Quello che ti interessa magari è la dir di installazione di ogni file, che va scelta accuratamente.

Invece degli autotools, ti consiglio di usare cmake. Pur non avendo ancora una "feature parity" esatta con gli autotools, ha dei pregi indiscutibili in fase di organizzazione del Makefile (che poi è la cosa più importante), è (più) semplice da configurare e portabilità assicurata su win, lin, mac.

elendil
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 9 ago 2008, 12:39
Nome Cognome: Valerio
Slackware: 14
Kernel: 3.2.29
Desktop: xfce
Distribuzione: SalixOS
Località: Carpineto Romano (RM)

Re: Consiglio sull'utilizzo di KDevelop

Messaggio da elendil »

ildiama ha scritto:Solitamente si utilizza la dir "include" per inserire classi, implementazioni, librerie di funzionalità che supportano la tua applicazione, ma non la implementano direttamente. Esempio (banalissimo): la mia applicazione gestisce figure geometriche. Implemento triangolo e rettangolo in include e la mia applicazione (che li usa) in src.
Ti ringrazio moltissimo per la risposta, che sicuramente mi sarà utile in futuro. Leggendo questi forum non si finisce mai di imparare, ma lo schema che ho seguito fin'ora mi era stato "caldamente raccomandato" (facciamo a capirsi :) ) e preferirei mantenerlo: in include tutte le definizioni, in src le implementazioni delle stesse, in examples le prove (per il momento piccoli esempi giocattolo da poche righe di codice). Fin quando non mi è stato chiesto di usare gli autotools, ho usato in un primo momento Kate fin quando le classi non sono diventate troppe e sono passato ad Eclipse (venendo da Java non riesco a separarmene tanto facilmente) e il problema non si è mai posto. Fino a quando mi hanno chiesto di usare gli autotools... da lì sono iniziati i miei problemi :lol:
Avevo dato un rapido sguardo alla documentazione di cmake qualche giorno fa, devo dire che è davvero una bel progetto... Certamente mi è sembrato più semplice che usare gli autotools...
"In wars boy, fools kill other fools for foolish causes." (R. Jordan, The Wheel of Time book 1)

Avatar utente
ildiama
Linux 3.x
Linux 3.x
Messaggi: 536
Iscritto il: mar 27 dic 2005, 16:49
Slackware: mine
Kernel: 2.6.alto..
Desktop: KDE4
Località: Senigallia
Contatta:

Re: Consiglio sull'utilizzo di KDevelop

Messaggio da ildiama »

elendil ha scritto: Ti ringrazio moltissimo per la risposta, che sicuramente mi sarà utile in futuro.
di nulla..
elendil ha scritto: Leggendo questi forum non si finisce mai di imparare, ma lo schema che ho seguito fin'ora mi era stato "caldamente raccomandato" (facciamo a capirsi :) ) e preferirei mantenerlo:
in include tutte le definizioni,
in src le implementazioni delle stesse,
in examples le prove
Chiedo scusa se insisto ancora un pò.. ma questo suggerimento "caldamente raccomandato" mi suona strano. Come fai a implementare una classe? nel file classe.cpp scrivi qualcosa come

Codice: Seleziona tutto

#include "../include/classe.h"
:?:
Spero proprio di no. #-o

Quello che leggo mi sembra un suggerimento su dove installare la roba, non su come organizzare un progetto. Ma forse ho interpretato male la tua spiegazione.

elendil
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 9 ago 2008, 12:39
Nome Cognome: Valerio
Slackware: 14
Kernel: 3.2.29
Desktop: xfce
Distribuzione: SalixOS
Località: Carpineto Romano (RM)

Re: Consiglio sull'utilizzo di KDevelop

Messaggio da elendil »

ildiama ha scritto:Chiedo scusa se insisto ancora un pò.. ma questo suggerimento "caldamente raccomandato" mi suona strano. Come fai a implementare una classe?
nel file classe.cpp ci scrivo:

Codice: Seleziona tutto

#include "classe.h"
e compilo con:

Codice: Seleziona tutto

g++ ...... -I../include/ .....
:-k
"In wars boy, fools kill other fools for foolish causes." (R. Jordan, The Wheel of Time book 1)

Rispondi