Newsgroup: it.comp.os.linux.development
Titolo: #include: come impostare il "path"?

Salve al NG,
Ho un paio di domande:
#1 sto seguendo il tutorial delle librerie QT per addentrarmi in futuro 
nello sviluppo di semplici applicazioncine per KDE. Purtroppo mi sono 
bloccato di fronte ad un ostacolo per voi senz'altro banale, ma che mi ha 
totalmente spiazzato. Quando provo a compilare un semplicissimo, STUPIDO 
programma che si appoggi alle QT3, la compilazione fallisce perche' non 
trova i file di intestazione delle librerie:
$ g++ TutorialQT1.cpp
TutorialQT1.cpp:7:26: qapplication.h: No such file or directory
TutorialQT1.cpp:8:25: qpushbutton.h: No such file or directory
Come faccio a dire ad include di andare a cercare in /usr/lib/qt3/include/ 
le librerie che gli indico?
Scusate ancora per la banalita'...
#2 In generale, a che servono i vari Make, Makefile e Configure.in? Mi 
servebbe un Makefile per risolvere il problema #1? Da quello che ho potuto 
osservare, la sintassi dei sopracitati file mi sembra abbastanza complessa: 
non c'e' un modo per generarli in automatico? Ringrazio chiunque sia in 
grado di darmi link/info su Make e Configure, come potete vedere ho un po' 
di confusione (man make non e' molto esplicativo...).
 
Saluti
 
-- 
La speranza e' l'ultima a morire. Ma muore.

 #2 In generale, a che servono i vari Make, Makefile e Configure.in?
Leggi la documentazione di Make.
Davide

 di confusione (man make non e' molto esplicativo...).
questo l'ho trovato ieri.
http://sources.redhat.com/autobook/
poi ci sono alcuni howto... cerca automake e autoconf 
-- 
HappyCactus - Registered Linux User #209744
http://www.angelfire.com/jazz/happycactus/index.html
Made with 100% recycled electrons

 Col parametro -I del compilatore
Ringrazio entrambi per avermi suggerito la risposta: non ho proprio visto 
l'opzione -I nelle pagine man di g++ . Il problema e' che a me non 
funziona!
Ecco l'output restituito. Eppure dovrebbe andare, non capisco, le librerie 
le carica e il programma in questione e' preso direttamente dal tutorial 
delle QT...
[davide@wintermute QT]$ g++ -I /usr/lib/qt3/include/ main.cpp
/tmp/ccOqpX6F.o: In function `main':
/tmp/ccOqpX6F.o(.text+0x1a): undefined reference to 
`QApplication::QApplication(int &, char **)'
/tmp/ccOqpX6F.o(.text+0x34): undefined reference to `QString::QString(char 
const *)'
/tmp/ccOqpX6F.o(.text+0x4a): undefined reference to 
`QPushButton::QPushButton(QString const &, QWidget *, char const *)'
/tmp/ccOqpX6F.o(.text+0x76): undefined reference to 
`QPushButton::resize(int, int)'
/tmp/ccOqpX6F.o(.text+0x8c): undefined reference to 
`QApplication::setMainWidget(QWidget *)'
/tmp/ccOqpX6F.o(.text+0x9e): undefined reference to `QWidget::show(void)'
/tmp/ccOqpX6F.o(.text+0xad): undefined reference to 
`QApplication::exec(void)'
/tmp/ccOqpX6F.o(.text+0xc7): undefined reference to 
`QPushButton::~QPushButton(void)'
/tmp/ccOqpX6F.o(.text+0xd8): undefined reference to 
`QApplication::~QApplication(void)'
/tmp/ccOqpX6F.o(.text+0x11e): undefined reference to 
`QPushButton::~QPushButton(void)'
/tmp/ccOqpX6F.o(.text+0x149): undefined reference to 
`QApplication::~QApplication(void)'
/tmp/ccOqpX6F.o: In function `QString::~QString(void)':
/tmp/ccOqpX6F.o(.gnu.linkonce.t._._7QString+0x23): undefined reference to 
`QString::shared_null'
/tmp/ccOqpX6F.o(.gnu.linkonce.t._._7QString+0x2b): undefined reference to 
`QString::shared_null'
/tmp/ccOqpX6F.o(.gnu.linkonce.t._._7QString+0x3c): undefined reference to 
`QStringData::deleteSelf(void)'
collect2: ld returned 1 exit status
Per completezza metto anche il sorgente...
#include <qapplication.h>
#include <qpushbutton.h>
int main( int argc, char **argv )
{
    QApplication a( argc, argv );
    QPushButton hello( "Hello world!", 0 );
    hello.resize( 100, 30 );
    a.setMainWidget( &hello );
    hello.show();
    return a.exec();
}
Ripeto, ho fatto un copia&incolla del tutorial #1 delle QT, volevo vedere 
solo come funzionava. Perche' non va?



Devi indicare al compilatore che deve usare le liberie Qt (flag -L).
Quali siano esattamente i nomi delle librerie da includere non saprei non ho
mai usato Qt (vedi la documantazione).
Alessandro.


"Unix IS user friendly. It's just selective about who its friends are"