有没有办法知道Visual Studio是否是.pro
文件中的编译器?
例如,有很多方法可以检测项目文件中的内容,包括操作系统或配置:
CONFIG(boost_asio) {
DEFINES += BOOST_SOCKETS
SOURCES += asiosocket.cpp
LIBS += -L/usr/local/lib \
-lboost_system
}
OTHER_FILES +=
contains(QT_VERSION, ^5\\.[0-9]\\..*) {
SOURCES += wavreader.cpp
HEADERS += wavreader.h
QT += multimedia
}
include(../../Shared/Common.pri)
windows: { LIBS += -L$$bin -lzip-2 }
!windows: { LIBS += -lzip }
我想要的是提供一个适当的链接来增强mingw和boost上的库。但它们的名称类似于boost_chrono-vc120-mt-1_58
,它们依赖于编译器。
有什么方法可以让我有类似的东西:
visualstudio {
LIBS += -LC:/boost/libs -lboost_system-vc120-mt-1_58
}
一种方法是让用户告诉他在qmake的CONFIG
参数中使用哪个编译器,但我认为这不是最佳解决方案。
答案 0 :(得分:2)
您要检查是否正在使用MSVC,而不是Visual Studio。见这里:
Qt .pro file: how to check if I'm compiling with MSVC 2013 toolset?