Schwerer Anfang bei Qt



  • Hallo,
    ich habe gerade angefangen Qt zu nutzen und sobald es über ein paar Zeilen Code hinauswächst, kommt natürlich sofort ein Problem.
    Ich versuche das AddressBook-Tutorial von der Qt-Seite nachzuschreiben.

    Zunächst erhalte ich beim kompilieren mehrere LNK2001-Fehler, unter anderem:
    1>addressbook.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual struct QMetaObject const * __thiscall AddressBook::metaObject(void)const " (?metaObject@AddressBook@@UBEPBUQMetaObject@@XZ)".

    Google sagt mir, dass Problem sei, dass moc nicht angwendet wird. Was das heißt und wie ich es anwende, finde ich nirgends (verständlich).

    Ich nutze Visual Studio 2010.



  • Wurstinator schrieb:

    Was das heißt und wie ich es anwende

    Das glaube ich dir jetzt aber wirklich nicht. Das ist eines der grundlegendsten Konzepte von Qt überhaupt.



  • Zum Einstieg kann ich Dir den QtCreator empfehlen. Damit sollte die Probleme nicht auftauchen.

    Solltest Du mit VS weiter machen wollen, dann hoffe ich, dass Du das qt-vs-addin installiert hast und mit dem Qt Wizard Dein Projekt erstellst. Damit sollte das moc Problem auch nich auftauchen!



  • Mag ja sein, aber ich habe, wie gesagt, gerade erst mit Qt angefangen.
    Ein Erstklässler kann auch keine Division anwenden, obwohl sie eine grundlegende Operation der Mathematik ist.



  • Wurstinator schrieb:

    Mag ja sein, aber ich habe, wie gesagt, gerade erst mit Qt angefangen.
    Ein Erstklässler kann auch keine Division anwenden, obwohl sie eine grundlegende Operation der Mathematik ist.

    Und? Ein Erstklässler hat Lehrer, die ihm sowas beibringen. Später im Leben ist es aber wichtig zu lernen, selber Informationen zu finden. Es hat keinen Sinn, etwas absolut grundlegendes, was schon zig tausendfach beschrieben ist, einfach gleich in einem Forum nachzufragen, damit wieder jemand seine Zeit verschwendet, um schon wieder etwas zu beschreiben, was wie gesagt schon zig tausendfach beschrieben ist.



  • Wurstinator schrieb:

    Mag ja sein, aber ich habe, wie gesagt, gerade erst mit Qt angefangen.
    Ein Erstklässler kann auch keine Division anwenden, obwohl sie eine grundlegende Operation der Mathematik ist.

    1. Bist du ein Kind? Dann lass es
    2. Lern die Grundlagen bevor du dich mit Qt-Programmierung beschäftigst. Offensichtlich hassu nie gelernt die Fehler der Entwicklungswerkzeugen zu deuten.
    3. Zur Orientierung erstmal: http://qt.nokia.com/learning/topics/core und dann Tutorials machen. Nix ist schlimmer als planlos irgendwelche Schritte hinterher zu dackeln.


  • @ ScyllaIllciz: Das Addin hatte ich installiert, aber den Wizard nicht gesehen, da ich in einem bereits vorher erstellen Projekt getestet habe.
    Dann werde ich wohl damit arbeiten, danke 🙂

    @ Mechanics: Stimmt, eine Antwort auf meine Frage hätte sicherlich viel mehr Zeit in Anspruch genommen, als deine beiden Beiträge, die nichts mit dem Thema zu tun haben.

    @ Zeus: Die Seite von Qt ist etwas seltsam aufgebaut. Ich habe mit Getting Started angefangen und bin dann zu "Tutorials/Qt Essentials" übergegangen.
    Also soll ich mir deiner Meinung nach erst mehrere Stunden Videos anschauen, bevor ich selbst anfange Code zu tippen?
    Ich dackle nicht planlos Schritten hinterher. Ich habe nur gefragt, wie ich den Linker-Fehler behebe, was, soweit ich weiß, nichts damit zu tun hat.



  • Die PDF sind wohl besser dort wird auch das Qt Build Prozess aufgezeigt. Falls die Präsentation nicht reicht, mal die Referenzdoc überfliegen. Aber somit hassu wenigsten ein Überblick.



  • @ Zeus: Du meinst "Qt in Education Course Material"? Gut, ich werd mir das dann mal ansehen.



  • Lade dir das Qt-SDK herunter (gibts für Win/MacOS/Linux) und installiere das.
    Dann klappt alles sofort "out-of-the-box".
    Anstatt Visual Studio kommt mit dem SDK der Qt-Creator und der ist sehr gut und auch für den Einstieg geeignet. Zumal Visual Studio Express nicht mit Qt funktioniert und somit eine teure Lizenz nur für IDE/Kompiler nötig ist, beim SDK ist alles kostenlos (Qt-Creator/MinGW).
    Ich habe zwar eine Visual Studio 6er und 2005er Professional-Lizenz für mehrere hundert Euro, nutze aber nur noch den Qt-Creator.
    Ganz genaue Anleitung für den Einstieg gibts übrigens auch von Qt/Nokia (auf deren Seite mal unter Doc schauen).



  • Wie gesagt, ich möchte nicht den Qt Creator nutzen. Mein Ziel ist es nicht nur, ein Programm mit Nutzeroberfläche zu erstellen, sondern auch, C++ zu üben.



  • Wurstinator schrieb:

    Wie gesagt, ich möchte nicht den Qt Creator nutzen. Mein Ziel ist es nicht nur, ein Programm mit Nutzeroberfläche zu erstellen, sondern auch, C++ zu üben.

    Das eine schließt das andere ja nicht aus. QtCreator ist bloß eine andere C++-IDE. Aber da kann ja jeder seinem persönlichem Geschmack nachgehen. 🙂

    Ich weiß nicht, ob du das schon gefunden hattest, aber der Vollständigkeit halber:



  • Ups, mein Fehler. Ich habe QtCreator mit QtDesigner verwechselt.
    Warum sollte ich extra für Qt mich in eine neue IDE einarbeiten? Ich habe mich an Visual Studio gewöhnt. Was macht QtCreator denn so viel einfacher?

    http://doc.qt.nokia.com/4.6/object.html
    http://doc.qt.nokia.com/4.6/moc.html

    Ich gucks mir mal an.



  • Wurstinator schrieb:

    Warum sollte ich extra für Qt mich in eine neue IDE einarbeiten?

    Da spricht vermutlich nicht all zu viel für.

    Wurstinator schrieb:

    Was macht QtCreator denn so viel einfacher?

    Die Integration von Qt in die IDE ist sehr gut.



  • Softwaremaker schrieb:

    Lade dir das Qt-SDK herunter (gibts für Win/MacOS/Linux) und installiere das.
    Dann klappt alles sofort "out-of-the-box".
    Anstatt Visual Studio kommt mit dem SDK der Qt-Creator und der ist sehr gut und auch für den Einstieg geeignet. Zumal Visual Studio Express nicht mit Qt funktioniert und somit eine teure Lizenz nur für IDE/Kompiler nötig ist, beim SDK ist alles kostenlos (Qt-Creator/MinGW).
    Ich habe zwar eine Visual Studio 6er und 2005er Professional-Lizenz für mehrere hundert Euro, nutze aber nur noch den Qt-Creator.
    Ganz genaue Anleitung für den Einstieg gibts übrigens auch von Qt/Nokia (auf deren Seite mal unter Doc schauen).

    So langsam kann ich dich verstehen. Ich mache auch gerade meine ersten Schritte mit Qt. Die IDE, das Framework, die Doku. HAMMER


  • Mod

    Wobei man sagen muss, das man heute eigentlich den QtCreator nach dem SDK noch mal in neuerer Version installieren sollte, das SDK ist leider bei 2.4 stehen geblieben...



  • Danke, aktuell ist wohl Version 2.8 warum kann ich die nicht so ohne weiteres runterladen? Ich habe das Gefühl auch hier geht es wieder um Kommerz. Meine Güte ich will einfach nur ein bisschen programmieren und ständig muss ich auf irgendwas verzichten wenn ich nicht sehr viel Geld bezahle.

    Ich glaube ich suche mal nach was nicht kommerziellen wo ich keinen Einschränkungen unterlegen bin. Is ja schließlich alles nur zum Spaß und Zeit habe ich ohne Ende.



  • Qt wurde komplett von Nokia an Digia "verschenkt".
    Davor wurde alles auf qt-project.org umgestellt, mit dem Ziel das Projekt firmenunabhängig zu betreiben.

    Unter http://qt-project.org/downloads findet man das SDK 1.2.1 mit QtCreator 2.4.1.
    Etwas weiter runter den QtCreator 2.5.2.

    Unter http://builds.qt-project.org/ findet man die NighlyBuilds.
    QtCreator 2.6 kommt demnächst, da bereits der RC veröffentlicht wurde.



  • Butterbrot schrieb:

    Danke, aktuell ist wohl Version 2.8 warum kann ich die nicht so ohne weiteres runterladen? Ich habe das Gefühl auch hier geht es wieder um Kommerz. Meine Güte ich will einfach nur ein bisschen programmieren und ständig muss ich auf irgendwas verzichten wenn ich nicht sehr viel Geld bezahle.

    Ich glaube ich suche mal nach was nicht kommerziellen wo ich keinen Einschränkungen unterlegen bin. Is ja schließlich alles nur zum Spaß und Zeit habe ich ohne Ende.

    Nein der Qt-Creator ist bei Version 2.5.2. Und diese Version kannst du auch kostenlos herunterladen ohne Einschränkung siehe http://qt-project.org/downloads#qt-creator



  • Danke für die Links, werde ich mir mal anschauen. Im Moment ist Codelite mit wxWidgets auf der Prüfstrecke, das sind kostenlosen sehr freie Geschichten. Eigentlich genau das richtig für ein wenig Hobbycoding.

    Aber ich behalte auch Qt im Hinterkopf, man muss sich ja nicht auf eins festlegen und Zeit zum Rumspielen habe die nächsten Monate mehr als genug.


Anmelden zum Antworten