Qt moc-Dateien & Visual Studio



  • Hallo zusammen,

    Wenn ich mithilfe des Qt Add In für Visual Studio eine Qt-Applikations-Projekt erstelle, so wird folgende Struktur angelegt:

    :
    + Generierte Dateien
      + Release
         - moc_testapp.cpp
      + Debug
         - moc_testapp.cpp
    :
    

    Für jede Konfiguration werden separate moc-Dateien erzeugt.
    Kennt hier jemand den Grund, warum das so ist?

    Die Inhalte sind bei mir identisch (= Erwartung, die Oberfläche ist ja nicht Konfigurationsabhängig).

    Ja, ich weiß dass das Moc-Verzeichnis konfiguriert werden kann, ist das einfach eine unglückliche Default-Einstellung?

    Vielen Dank.

    Viele Grüße,

    Jakob



  • Ich benutze das Add In nicht (glaub jetzt aber auch nicht, dass das entscheidet, wo die Mocs hinkommen). Ich wüsste jetzt auswendig gar nicht, wo die moc Dateien landen.
    Das könnte technische Gründen haben. Ist aber vielleicht auch nicht unpraktisch. Das sind automatisch generierte Daten. Du könntest im Code sowas wie #ifdef DEBUG haben, und dann hast du entweder einen Slot, oder du hast ihn nicht. Also würde jeder Build die Datei wieder überschreiben. So können die nebeneinander liegen.



  • Glaub die buildtools sehen alles im buildprozess als genereirtes als output an und legen das ins buildverzeichniss ....

    Das macht auch Sinn. Stell dir vor, es gibt ja per definition nicht nur Debug und Release, sondern auch x86, amd64 ... etc build Konfigs. Da hat die Architecktur dann vielleicht doch nen EInfluss drauf.

    Und üeberleg mal, wenn man gleichzeitig debug und release baut ... die sourcen sind nicht das problem, die bleiben ja gleich, aber die mocs werden geschrieben. Wenn das 2 prozesse gleichzeitig veruchen ... gibts Salat ....

    Ciao ...



  • RHBaum schrieb:

    Glaub die buildtools sehen alles im buildprozess als genereirtes als output an und legen das ins buildverzeichniss ....

    Das macht auch Sinn. Stell dir vor, es gibt ja per definition nicht nur Debug und Release, sondern auch x86, amd64 ... etc build Konfigs. Da hat die Architecktur dann vielleicht doch nen EInfluss drauf.

    Und üeberleg mal, wenn man gleichzeitig debug und release baut ... die sourcen sind nicht das problem, die bleiben ja gleich, aber die mocs werden geschrieben. Wenn das 2 prozesse gleichzeitig veruchen ... gibts Salat ....

    Ciao ...

    Vielen Dank für Eure Antworten.

    Kann ich beides nachvollziehen, dann passt nur die Standardeinstellung für die Uic'ing (und für die Ressourcefile) nicht. Hier wird Konfigurations unabhängig eine Datei erstellt ^^

    Wünsche ein wundervolles Wochenende.

    Bis dann


Anmelden zum Antworten