سؤال

أنا أستخدم Qmake لبناء مشروع لي. لقد كنت أحاول تعيين متغير Destir من Qmake بقيمة تعتمد على المترجم المستخدم. في الواقع ، أريد أن يتم وضع ثنائي مشروعي ، بعد بناء ، في دليل له اسم المترجم المستخدم لبناءه.

شيء من هذا القبيل ... شجرة الدليل الحالية لمشروعي

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

أردت أن يكون هكذا

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

هل يمكنني القيام بذلك باستخدام Qmake؟

هل كانت مفيدة؟

المحلول

في ملف 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/

إذا كنت لا ترغب في تعيين إصدار المترجم ، فيمكنك الاستعلام عنه بشكل ديناميكي. لا أعرف ما إذا كان هناك أي حل عام C ++/Qmake لذلك ، ولكن مع G ++ يمكنك استخدام -Dumpversion:

CXX_VERSION = $$system($$QMAKE_CXX -dumpversion)
DESTDIR=$$PROJECT_ROOT/bin/$$QMAKE_CXX-$$CXX_VERSION/
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top