Pages : 1
#1 Le 08/12/2006, à 15:35
- befa8
Qt (compilation) , Xemacs et kate
Bonjour cher confrère en Ubuntu
je suis un programmeur novice . avant d'utiliser Ubuntu , j'utilisais Suse , et part defaut Qt y étais deja installer , d'ailleur comme sous Ubuntu.
mais bizarrement quand j'ecris un programme utilisant une bibliothèque de Qt , le compilatuer arrive pas a trouver la bibliothèque , je sais plus quoi faire
exemple , un programme basique
#include <QApplication>
#include <QFont>
#include <QPushButton>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPushButton quit("Quit");
QPushButton hide("Hide");
quit.resize(100, 50);
hide.resize(100, 50);
quit.setFont(QFont("Times", 18, QFont::Bold));
hide.setFont(QFont("Times", 18, QFont::Bold));
QObject::connect(&quit, SIGNAL( pressed()), &app, SLOT(quit()));
QObject::connect(&hide, SIGNAL( pressed()), &quit, SLOT(hide()));
quit.show();
hide.show();
return app.exec();
}
compilation
qmake -project
qmake
make
voici le resultat :(
fabrice@fabrice-desktop:~/Maitrise Media et Com/QT1$ make
g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o hide.o hide.cpp
hide.cpp:1:25: erreur: QApplication : Aucun fichier ou répertoire de ce type
hide.cpp:2:18: erreur: QFont : Aucun fichier ou répertoire de ce type
hide.cpp:3:24: erreur: QPushButton : Aucun fichier ou répertoire de ce type
hide.cpp:22:3: attention : pas de retour chariot à la fin du fichier
hide.cpp: In function «int main(int, char**)»:
hide.cpp:7: erreur: «QApplication» was not declared in this scope
hide.cpp:7: erreur: expected `;' before «app»
hide.cpp:9: erreur: «QPushButton» was not declared in this scope
hide.cpp:9: erreur: expected `;' before «quit»
hide.cpp:10: erreur: expected `;' before «hide»
hide.cpp:11: erreur: «quit» was not declared in this scope
hide.cpp:12: erreur: «hide» was not declared in this scope
hide.cpp:13: erreur: «QFont» has not been declared
hide.cpp:13: erreur: «Bold» was not declared in this scope
hide.cpp:13: erreur: «QFont» was not declared in this scope
hide.cpp:14: erreur: «QFont» is not a class or namespace
hide.cpp:15: erreur: «QObject» has not been declared
hide.cpp:15: erreur: «pressed» was not declared in this scope
hide.cpp:15: erreur: «SIGNAL» was not declared in this scope
hide.cpp:15: erreur: «app» was not declared in this scope
hide.cpp:15: erreur: «SLOT» was not declared in this scope
hide.cpp:15: erreur: «connect» was not declared in this scope
hide.cpp:16: erreur: «QObject» has not been declared
hide.cpp: At global scope:
hide.cpp:5: attention : unused parameter «argc»
hide.cpp:5: attention : unused parameter «argv»
make: *** [hide.o] Erreur 1
Ma deuxieme question porte sur kate mon editeur de texte favori.
bizarement la mini console (de kate) a disparu , lorsque je clique sur l'icone y'a que du blanc qui apparait .
ausi , j'essaye de me mettre a Xemacs , je voudais savoir comment lon active la coloration des mots clé.
merci d'avance
#2 Le 11/12/2006, à 09:21
- befa8
Re : Qt (compilation) , Xemacs et kate
personne n'a deja utilisé QT sous ubuntu ?
#3 Le 11/12/2006, à 09:42
- guyver2
Re : Qt (compilation) , Xemacs et kate
d'abbord une remarque : je vois que tu utilise Qt3, pourquoi pas plutot Qt4 ?
ensuite essaye de mettre #include <Qt/Q....> au lieu de directement #include <Q....>
(regarde dans le dossier /usr/includes/ pour voir comment acceder au differentes bibliotheques)
Croire est le meilleur moyen de ne jamais rien savoir
Mes jeux en C/C++
Hors ligne
#4 Le 14/05/2007, à 13:26
- ktulu
Re : Qt (compilation) , Xemacs et kate
j'ai le même problème, j'ai fais un main tout con, je tape :
qmake -project
qmake
make
lors du make il ne trouve pas les fichiers :
project.cpp:1:27: erreur: QApplication : Aucun fichier ou répertoire de ce type
project.cpp:2:26: erreur: QPushButton : Aucun fichier ou répertoire de ce type
j'ai essayé en mettant #include <qt3/QApplication> et aussi #include <Qt/QApplication> mais ça ne change rien.
j'ai cette ligne dans le Makefile :
INCPATH = -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3
j'ai vérifié sur mon disque les fichiers sont bien présents.
par contre si je met
#include <qt3/qapplication.h>
#include <qt3/qpushbutton.h>
je n'ai plus les memes erreurs :
% make
g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o project.o project.cpp
project.cpp: In function âint main(int, char**)â:
project.cpp:7: erreur: no matching function for call to âQPushButton::QPushButton(const char [13])â
/usr/include/qt3/qpushbutton.h:138: note: candidats sont: QPushButton::QPushButton(const QPushButton&)
/usr/include/qt3/qpushbutton.h:67: note: QPushButton::QPushButton(const QIconSet&, const QString&, QWidget*, const char*)
/usr/include/qt3/qpushbutton.h:65: note: QPushButton::QPushButton(const QString&, QWidget*, const char*)
/usr/include/qt3/qpushbutton.h:64: note: QPushButton::QPushButton(QWidget*, const char*)
make: *** [project.o] Erreur 1
zsh: exit 2 make
voici mon project.cpp :
#include <qt3/qapplication.h>
#include <qt3/qpushbutton.h>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QPushButton hello("Hello World!");
hello.resize(100, 30);
hello.show();
return app.exec();
}
(c'est le tuto1 du site de QT)
je suis un peu perdu, si quelqu'un peut me donner un coup de pouce
merci beaucoup !
Hors ligne
#5 Le 14/05/2007, à 13:41
- ktulu
Re : Qt (compilation) , Xemacs et kate
a ba en fait j'ai rien dit, c'est parce que je faisais un tuto qt4 alors que j'avais mis la librairie qt3 ...
désolé
Hors ligne