Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2400 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [KDE C++] Newbee Question de compilation

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[KDE C++] Newbee Question de compilation

n°369841
Guilz
Summerized
Posté le 23-04-2003 à 20:14:04  profilanswer
 

N'hésitez pas à me corriger si je me contredit ou si je racontre des conneries mais j'ai un pb :
j'arrive pas à compiler un khello tout con.
le compilateur me trouve des erreurs dans les .h je comprends vraiment pas...
http://developer.kde.org/documenta [...] hello1.htm
j'ai repris excatement ce khello et ce que j'ai à la compilation c'est du style :

Code :
  1. /usr/include/kmainwindow.h:658: virtual outside class declaration
  2. /usr/include/kmainwindow.h:665: virtual outside class declaration
  3. /usr/include/kmainwindow.h:672: non-member function `bool settingsDirty()' cannot have `const' method qualifier
  4. /usr/include/kmainwindow.h:676: parse error before `)' token
  5. /usr/include/kmainwindow.h:681: non-member function `void saveWindowSize(KConfig*)' cannot have `const' method qualifier
  6. /usr/include/kmainwindow.h:692: parse error before `protected'
  7. /usr/include/kmainwindow.h:728: parse error before `private'
  8. /usr/include/kmainwindow.h:732: syntax error before `*' token
  9. /usr/include/kmainwindow.h:733: 'QPtrList' is used as a type, but is not defined as a type.
  10. /usr/include/kmainwindow.h:734: parse error before `protected'
  11. /usr/include/kmainwindow.h:739: parse error before `}' token
  12. khello.cc: In function `int main(int, char**)':
  13. khello.cc:7: `KApplication' undeclared (first use this function)
  14. khello.cc:7: parse error before `(' token
  15. khello.cc:8: `w' undeclared (first use this function)
  16. khello.cc:8: parse error before `(' token
  17. khello.cc:11: `a' undeclared (first use this function)

 
(c'est que la fin, j'ai pas tout mis :/ )
 
j'ai un mandrake 9.1 avec KDE 3.1
merci à ceux qui perdront un peu de temps pour m'aider.


Message édité par Guilz le 23-04-2003 à 20:50:41
mood
Publicité
Posté le 23-04-2003 à 20:14:04  profilanswer
 

n°369889
Captain ad​-hoc
miam les bon batonnets de tux
Posté le 23-04-2003 à 21:25:26  profilanswer
 

guilz a écrit :

(c'est que la fin, j'ai pas tout mis :/ )


 
quitte à ne pas tout mettre, essaye plutôt de ne mettre que le début ;) voire juste le premier message d'erreur

n°369980
Guilz
Summerized
Posté le 23-04-2003 à 22:54:32  profilanswer
 

ok, merci de ta réponse, voici le début :
 

Code :
  1. g++ -c -IDEDIR/include -ITDIR/include -fno-rtti khello.cc
  2. In file included from /usr/include/kapp.h:5,
  3.                  from khello.cc:2:
  4. /usr/include/kapplication.h:39:26: qapplication.h: No such file or directory
  5. /usr/include/kapplication.h:40:21: qpixmap.h: No such file or directory
  6. In file included from /usr/include/kapplication.h:41,
  7.                  from /usr/include/kapp.h:5,
  8.                  from khello.cc:2:
  9. /usr/include/kinstance.h:30:21: qstring.h: No such file or directory
  10. In file included from /usr/include/kapplication.h:41,
  11.                  from /usr/include/kapp.h:5,
  12.                  from khello.cc:2:
  13. /usr/include/kinstance.h:51: parse error before `&' token
  14. /usr/include/kinstance.h:116: parse error before `)' token
  15. /usr/include/kinstance.h:136: parse error before `&' token
  16. /usr/include/kinstance.h:144: 'QCString' is used as a type, but is not defined as a type.
  17. In file included from /usr/include/kapp.h:5,
  18.                  from khello.cc:2:
  19. /usr/include/kapplication.h:91: parse error before `,' token
  20. /usr/include/kapplication.h:111: parse error before `bool'
  21. /usr/include/kapplication.h:134: parse error before `*' token

 
 :cry:


Message édité par Guilz le 23-04-2003 à 22:55:24
n°370815
Guilz
Summerized
Posté le 24-04-2003 à 17:31:17  profilanswer
 

[:dirakocha]

n°370966
tanguy
Posté le 24-04-2003 à 19:22:38  profilanswer
 

tapes ca dans une console:
export QTDIR="/usr/lib/qt3/"
et toujours dans la MEME console, compile ton soft.
 
J'imagine que tu vas avoir une erreur un peu plus loin a cause de -lqt au lieu de lqt-mt sur la mandrake.
Si tu as le pb, en root dans le rep /usr/lib/qt3/lib tu crees un lien symbolique (en console, c'est ln -s) de libqt.so vers libqt-mt.so (qui est aussi un lien symbolique, mais comme ca si tu updates Qt y'aura pas de probleme), ya ptet une methode plus elegante, je sais pas (genre dans le .pro dire que tu veux qt-mt au lieu de qt).
 
conseils:
Je te conseil vivement d'etudier ca d'abord:
http://doc.trolltech.com/3.1/index.html
le tutorial1: http://doc.trolltech.com/3.1/tutorial.html
le tutorial2: http://doc.trolltech.com/3.1/tutorial2.html
 
Tout les trucs (doc, lib, headers...) sur Qt se trouve sur ton disque dur a l'emplacement: /usr/lib/qt3 (en gros la ou QTDIR doit pointer)
la doc html se trouve dans /usr/lib/qt3/doc
 
KDE en resume c'est une surcouche a Qt et la plupart des classes que tu utilises sont celles de Qt, donc etudie Qt surtout que les tutoriaux/exemples/documentation sont a jour et super bien foutus. Tu pourras toujours revenir par la suite au tutorial KDE pour voir les 2-3 specificites des classes KDE.
En general comme tu n'as pas besoin des trucs specifiques a KDE, limite toi a Qt (tout au moins au depart) et ainsi ton appli peut aussi se compiler sous Windows et MacOSX.
 
Pour les interfaces graphiques, le pure bon plan de la balle qui tue, c'est utilise QTDesigner pour generer un .ui (fichier XML) et ensuite utilise la classe QWidgetFactory http://doc.trolltech.com/3.1/qwidgetfactory.html (ya une doc la dessus dans la doc de QTDesigner)
 
explications:
KDE s'appuie sur la librairie graphique Qt
Les classes Qt commence par la lettre Q, or je vois:
 
qapplication.h: No such file or directory
 
les classes KDE font references aux classes Qt et n'arrivent pas a les trouver.
 
Il faut donc dire au compilo ou se trouve les classes Qt (les headers .h), ici ca devient un peu specifique a ta distrib, mais en regle generale il faut specifier QTDIR pour utiliser Qt.
 
Pourquoi dans la mandrake 9.1 c'est pas definie ? je sais pas (oui c'est con, sous Debian j'avais pas ce probleme). Trouver une solution elegante a ce probleme ? faut chercher sur les forums mandrake j'imagine, ca doit etre un probleme courant.


Message édité par tanguy le 24-04-2003 à 20:20:46
n°371529
Guilz
Summerized
Posté le 25-04-2003 à 10:37:18  profilanswer
 

:D Wahh ! merci beaucoup pour cette réponse !
j'ai réussit à compiler en faisant le export alors que la variable dans le makefile ne passe pas ... :hum:
 
J'ai pas eu le temps de chercher en profondeur le pb avec le make, mais celui ci fonctionne chez un pote avec la meme config linux que moi, mais pas chez moi ! Mais je te remercie pour ta réponse très complète tanguy ! :jap:
 
@+
Guilz
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [KDE C++] Newbee Question de compilation

 

Sujets relatifs
Problème en compilation avec c++....chtite question à propos de $_POST
Chtite question de Templates VS bête tableau en PHP.question simple
[Q-Basic] petit probleme dans la compilation :(petite question sur les accents
[Swing] Question sur GUI, affichage et rafraichissement[makefile] constantes de compilation
Petite question de débutant en vba sur excel....[HTML] Question sur un formulaire (tout champs hidden)
Plus de sujets relatifs à : [KDE C++] Newbee Question de compilation


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR