我正在使用qmake来构建我的项目.我一直在尝试设置qmake的DESTIR变量,其值取决于所使用的编译器.实际上,我希望我的项目的二进制文件在构建之后放在一个目录中,该目录具有用于构建它的编译器的名称.
像这样......我的项目的当前目录树是
- Project | - src | - include | - bin | |- binary_file
我希望它是这样的
- Project | - src | - include | - bin | | - gcc-4.3.4 | | |- binary_file
我可以使用qmake吗?
Tat*_*ela 10
在src/src.pro文件中,或在您设置DESTDIR的任何位置
# 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/
Run Code Online (Sandbox Code Playgroud)
如果您不想设置编译器版本,则可以动态查询它.我不知道是否有任何通用的c ++/qmake解决方案,但使用g ++你可以使用-dumpversion:
CXX_VERSION = $$system($$QMAKE_CXX -dumpversion)
DESTDIR=$$PROJECT_ROOT/bin/$$QMAKE_CXX-$$CXX_VERSION/
Run Code Online (Sandbox Code Playgroud)