courbes avec qwt - C++ - Programmation
Marsh Posté le 12-02-2008 à 18:38:58
Salut,
Tu peux poster ton main.cc stp?
Edit: entre balises [cpp ][ /cpp] (sans les espaces) pour faciliter la lecture de préférence
Marsh Posté le 12-02-2008 à 18:52:16
premier exemple
Code :
|
Deuxième exemple :
Code :
|
pour ce deuxième exemple j'ai tenté plusieurs chose : d'abord à la barbare pour voir ce qu'on allait me dire, et on m'a dis tout ce que j'ai mis. J'ai également essayé de créer des int main() mais ça faisait pareil
Merci
Marsh Posté le 12-02-2008 à 19:02:41
Le code du tuto chez Digital Fanatics est franchement vieux, et pas compatible avec Qwt 5.
Pour le 2nd, faut mettre ça dans un widget, lequel sera créé à partir de main (ou d'un autre widget).
Un conseil sérieux: oublie Qwt, oublie Qt, apprend le C++. Une fois que tu commenceras à être un peu à l'aise en C++, apprend Qt. Et une fois que tu seras à l'aise, apprend à te servir de Qwt.
Là, je doute vraiment que tu ais les bases minimales.
Marsh Posté le 12-02-2008 à 19:09:33
Je l'ai dis je débute.
Je me suis fais tout le tutoriel du siteduzero j'ai bien compris. Je fais des cours de C++, et je me débrouille dans tous les exos, création et utilisation de classe, mais là c'est juste l'utilisation de Qt et de qwt que je ne maitrise pas du tout. C'est vrai que je n'ai pas du tout créé d'application avec Qt.
Mais je pense qu'il doit être possible de s'en sortir avec Qt et Qwt avec les bases que j'ai.
Tu connais un bon tutoriel pour Qt
Marsh Posté le 12-02-2008 à 19:12:59
benito59650 a écrit : Je l'ai dis je débute. |
J'ai bien compris
Mais je préfère te dire que tu n'as clairement pas le niveau pour utiliser Qt et Qwt.
Parce que le 2nd code, c'est clair et net que l'utiliser sans widget, sans main, sans fonction, avec des variables inconnues, c'est évident que tu ne peux vraiment pas. Continue le C++ pendant encore 4 ou 5 mois (après tout dépend si c'est intensif et si tu percutes facilement), et seulement alors tu pourras être à l'aise avec Qt.
Le meilleur tuto pour ocmmencer avec Qt est celui de la doc qui te donne un bon aperçu du fonctionnement de Qt.
Marsh Posté le 12-02-2008 à 19:16:38
Je sais que le deuxième code ne s'utlise pas comme ça, mais justemetn je voulais des exemples pour savoir comment l'utiliser.
Merci de ta réponse
Marsh Posté le 12-02-2008 à 19:19:39
Ok, ben, quand je serais chez moi je te fais ça alors... mais je suis pas sûr de vraiment t'aider
Marsh Posté le 12-02-2008 à 20:59:12
Voilà:
Code :
|
Marsh Posté le 12-02-2008 à 22:47:43
Ah merci beaucoup, mais au risque de me faire manger j'ai une petite erreur de compilation :
/usr/bin/ld: cannot find -lqwt
collect2: ld a retourné 1 code d'état d'exécution
make: *** [ex01] Erreur 1
voici pourtant mon .pro
TEMPLATE = app
TARGET =
DEPENDPATH += .
INCLUDEPATH += . /usr/local/qwt-5.0.2/include
LIBS += -lqwt
# Input
SOURCES += main.cc
tu saurais ça viens d'où?
Marsh Posté le 12-02-2008 à 23:43:01
LIBS += -L/usr/local/qwt-5.0.2/lib -lqwt
(bien sûr, je te laisse corriger le chemin en adéquation avec ton install)
Marsh Posté le 12-02-2008 à 23:55:44
snif ça compile mais nouvelle erreur lors de l'execution :
./ex01: error while loading shared libraries: libqwt.so.5: cannot open shared object file: No such file or directory
Marsh Posté le 13-02-2008 à 00:03:44
Heu, là par contre... Ce fichier il est dans un répertoire de ton LD_LIBRARY_PATH ? S'il n'y est pas ajoute le, puis appelles ldconfig -si quelqu'un peut confirmer que c'est la commande pour "rafraîchir" cette variable en mémoire- (et peut-être avec sudo, je sais plus)
Marsh Posté le 13-02-2008 à 00:05:58
j'ai entendu plusieurs fois parler de LD_LIBRARY_PATH mais je ne sais ce que c'est et où on le trouve
Marsh Posté le 13-02-2008 à 00:12:23
Dans ton home, il me semble que tu as un fichier .bashrc qui sert en parie à le modifier comme il faut... Mais je n'ai eu à le faire qu'une fois ou 2, alors je commence à être en terrain inconnu.
Si c'est bien ça, il doit falloir y ajouter une ligne du type:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATHpath/vers/libqwt.so.5
Mais je ne saurais trop te conseiller de t'aider de google là dessus, ça se trouve assez rapidement, et tu réduiras les chances de "flinguer" temporairement ta session plutôt que de m'écouter ;p
Marsh Posté le 12-02-2008 à 18:36:22
Bonjour à tous,
Je suis débutant en C++, et je dois faire un programme qui trace des courbes. J'ai donc choisi qwt. Cependant je ne parviens pas à faire fonctionner les exemples donnés ici : http://www.digitalfanatics.org/pro [...] ter11.html et ici : http://qwt.sourceforge.net/class_qwt_plot.html .
Avant de vous faire peur avec tout ce texte , je tiens à préciser que je voudrais simplement des exemples basiques de traçage de courbe avec qwt, et pas forcément une correction des erreurs suivantes (que j'ai mis à titre indicatif au cas où il y aurait des erreurs simples)
Le premier exemple me donne comme message d'erreur :
main.cc: In constructor «MyPlot::MyPlot(QWidget*, char*)":
main.cc:9: erreur: no matching function for call to «QwtPlot::QwtPlot(QWidget*&, char*& )"
/usr/local/qwt-5.0.2/include/qwt_plot.h:116: note: candidats sont: QwtPlot::QwtPlot(const QwtText&, QWidget*)
/usr/local/qwt-5.0.2/include/qwt_plot.h:115: note: QwtPlot::QwtPlot(QWidget*)
/usr/local/qwt-5.0.2/include/qwt_plot.h:78: note: QwtPlot::QwtPlot(const QwtPlot& )
main.cc:15: erreur: «setAutoLegend" was not declared in this scope
main.cc:16: erreur: «Qwt" has not been declared
main.cc:16: erreur: «setLegendPos" was not declared in this scope
main.cc:23: erreur: «insertCurve" was not declared in this scope
main.cc:41: erreur: «setCurveData" was not declared in this scope
main.cc:45: erreur: «blue" was not declared in this scope
main.cc:45: erreur: «setCurvePen" was not declared in this scope
main.cc:46: erreur: «green" was not declared in this scope
main.cc: In function «int main(int, char**)":
main.cc:58: erreur: «class QApplication" has no member named «setMainWidget"
make: *** [main.o] Erreur 1
et le deuxième :
main.cc: At global scope:
main.cc:53: erreur: expected constructor, destructor, or type conversion before «*" token
main.cc:56: erreur: expected constructor, destructor, or type conversion before «=" token
main.cc:59: erreur: expected constructor, destructor, or type conversion before «*" token
main.cc:60: erreur: expected constructor, destructor, or type conversion before «*" token
main.cc:62: erreur: expected constructor, destructor, or type conversion before «(" token
main.cc:65: erreur: expected constructor, destructor, or type conversion before «->" token
main.cc:66: erreur: expected constructor, destructor, or type conversion before «->" token
main.cc:68: erreur: expected constructor, destructor, or type conversion before «->" token
main.cc:69: erreur: expected constructor, destructor, or type conversion before «->" token
main.cc:72: erreur: expected constructor, destructor, or type conversion before «->" token
make: *** [main.o] Erreur 1
Desolé de faire si long.
Dans le premier exemple j'ai rajouté les include suivant :
#include <qwt_plot.h>
#include <qwt_plot_curve.h>>
#include <Qapplication>
Si quelqu'un à une solution ou des exemples basiques à me donner, je vous remercie.
Je travail sur ubuntu.
Merci d'avance de vos réponses