2010-01-26 15 views
9

Ich benutze qmake für den Aufbau eines Projekts von mir. Ich habe versucht, die DESTIR-Variable von qmake mit einem Wert festzulegen, der vom verwendeten Compiler abhängt. Eigentlich möchte ich, dass die Binärdatei meines Projekts nach dem Build in einem Verzeichnis abgelegt wird, das den Namen des Compilers hat, mit dem es erstellt wurde.Konfigurieren der Variable DESTDIR in qmake

So etwas ... Mein aktueller Verzeichnisbaum für mein Projekt ist

 
- Project 
| - src 
| - include 
| - bin 
| |- binary_file 

ich es wie dies

 
- Project 
| - src 
| - include 
| - bin 
| | - gcc-4.3.4 
| | |- binary_file 

Kann ich dies mit qmake sein will?

Antwort

10

Im src/src.pro Datei, oder wo auch immer Sie die DESTDIR gesetzt

# compiler used 
QMAKE_CXX = g++-4.3 
# PROJECT_ROOT defined in .qmake.cache as $$PWD, in the Project root directory 
DESTDIR = $$PROJECT_ROOT/bin/$$QMAKE_CXX/ 

Wenn Sie die Compiler-Version nicht festlegen möchten, können Sie es dynamisch abfragen. Ich weiß nicht, ob es eine allgemeine C++/qmake-Lösung dafür gibt, aber mit g ++ können Sie -dumpversion verwenden:

CXX_VERSION = $$system($$QMAKE_CXX -dumpversion) 
DESTDIR=$$PROJECT_ROOT/bin/$$QMAKE_CXX-$$CXX_VERSION/