Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/134.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在Qt.pro文件中知道visual studio是否是编译器?_C++_Visual Studio_Qt_Qt Creator_Qmake - Fatal编程技术网

C++ 如何在Qt.pro文件中知道visual studio是否是编译器?

C++ 如何在Qt.pro文件中知道visual studio是否是编译器?,c++,visual-studio,qt,qt-creator,qmake,C++,Visual Studio,Qt,Qt Creator,Qmake,有没有办法知道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-

有没有办法知道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库链接。但它们的名称类似于
boost\u chrono-vc120-mt-1\u 58
,这取决于编译器

有没有什么方法可以让我吃到这样的东西:

visualstudio {
   LIBS += -LC:/boost/libs -lboost_system-vc120-mt-1_58
}

一种方法是让用户告诉他在qmake的
CONFIG
参数中使用的编译器,但我认为这不是最好的解决方案。

而不是Visual Studio,您想检查是否正在使用MSVC。请看这里:


您想检查是否正在使用MSVC,而不是Visual Studio。请看这里: