我想制作一个可以在MSVC和GCC中都能使用的项目文件。
例如,为了优化速度,你需要输入cl /O2
和g++ -O3
。
但是我不知道如何告诉项目文件如何区分。我希望有类似这样的东西:
msvc:QMAKE_CXXFLAGS_RELEASE += /O2 /openmp /arch:AVX
else:QMAKE_CXXFLAGS_RELEASE += -O3 -march=native -fopenmp -D_GLIBCXX_PARALLEL
遗憾的是,它无法正常工作。
另一种方法是更改 mkspecs 并将新的与我的应用程序捆绑在一起,但这不是非常便携。
win32
和!win32
这样的作用域吗?http://qt-project.org/doc/qt-4.8/qmake-advanced-usage.html - Retired Ninjacl -O3 -march=native -fopenmp -D_GLIBCXX_PARALLEL
,而我想要的是cl /O2 /openmp /arch:AVX
。 - Jean-Michaël Celeriermessage($${QMAKE_CXXFLAGS_RELEASE})
。当我运行qmake时,我得到了这个:Project MESSAGE: -O2 -MD /O2 /openmp /arch:AVX
,这很好,因为我的环境是Win7 + MSVC2010。那你的环境是什么? - Bill