Qt-Anwendung aus leerem Projekt zum Laufen bringen



  • Hallo,
    als Übung zum Erlernen von C++ und Visual Studio wollte ich ein leeres Projekt erzeugen und diese kleine "Hello World"-Anwendung zum laufen bringen:

    #include <QApplication>
    #include <QPushButton>
    
    int main(int argc, char *argv[])
        {
            QApplication app(argc, argv);
    
            QPushButton hello("Hello world!");
            hello.resize(100, 30);
    
            hello.show();
            return app.exec();
        }
    

    Dazu habe ich folgendes getan um das Programm zum Laufen zu bringen

    • das QtSDK von der Nokia-Webseite installiert
    • Zusätzliche Include-Verzeichnisse angegeben
    • Zusätzliche Bibliotheksverzeichnisse angegeben
    • Zusätzliche Abhängigkeiten angegeben

    Ich habe nun folgende Fragen:

    • Was genau bewirken zusätzliche Bibliotheksverzeichnisse und Abhängigkeiten und was ist der Unterschied dazwischen?
    • Kann ich die Einstellungen irgendwo speichern und für andere Projekte die gleichen Einstellungen benutzen?

    Gruss,
    Safadinho



  • Safadinho schrieb:

    Ich habe nun folgende Fragen:

    • Was genau bewirken zusätzliche Bibliotheksverzeichnisse und Abhängigkeiten und was ist der Unterschied dazwischen?
    • Kann ich die Einstellungen irgendwo speichern und für andere Projekte die gleichen Einstellungen benutzen?

    Die Verzeichnisse geben an wo der Compiler suchen soll und die zusätzlichen
    Abhängigkeiten geben die lib an die der Linker zur Applikation dazu linken soll.

    Das ganze landet dann bei VS2010 in der .vcxproj Datei.

    Das sieht dann dort z.B. so aus:

    <IncludePath>C:\Programme\qt-src-4.8.2\include;$(IncludePath)</IncludePath>
    <LibraryPath>C:\Programme\qt-src-4.8.2\lib;$(LibraryPath)</LibraryPath>
    

    und so

    <AdditionalDependencies>qtmain.lib;qtcore4.lib;qtgui4.lib;%(AdditionalDependencies)</AdditionalDependencies>
    

    Die libs sorgen meist dafür das die zugehörigen DLLs geladen werden. Diese
    müssen sich also beim Start der Applikation im Suchpfad finden.


Anmelden zum Antworten