Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt 5.8 and Boost 1.73, how or where to specify libraries?



  • I'm working on a project that was originally developed using Qt 4.8 and Boost 1.48. I am porting this to Qt 5.8 and Boost 1.73, the .pro file:

    QT += qml quick sql xml charts
    
    CONFIG += c++11 qmltypes
    
    RESOURCES += \
        qresources.qrc
    
    INCLUDEPATH +=  "$$PWD/" \
                    "$$PWD/Declaratives/" \
                    "$$PWD/ImageProviders/" \
                    "$$PWD/Models/" \
                    "$$PWD/Models/ActiveFaultsModel/" \
                    "$$PWD/Models/CalibrationModel/" \
                    "$$PWD/Models/CalibrationSettingsModel/" \
                    "$$PWD/Models/ConnectionManagerModel/" \
                    "$$PWD/Models/ConnectionStatusModel/" \
                    "$$PWD/Models/DateTimeUpdaterModel/" \
                    "$$PWD/Models/DefectModel/" \
                    "$$PWD/Models/DiagnosticDumpModel/" \
                    "$$PWD/Models/DiagnosticTraceModel/" \
                    "$$PWD/Models/DisabledComponentsModel/" \
                    "$$PWD/Models/DivisionInfoModel/" \
                    "$$PWD/Models/EjectorTestsModel/" \
                    "$$PWD/Models/ExternalConnectionsModel/" \
                    "$$PWD/Models/FaultModel/" \
                    "$$PWD/Models/FaultLogModel/" \
                    "$$PWD/Models/FeedControlModel/" \
                    "$$PWD/Models/FeedConfigModel/" \
                    "$$PWD/Models/GlobalStateModel/" \
                    "$$PWD/Models/IOSensorModel/" \
                    "$$PWD/Models/MachineIDModel/" \
                    "$$PWD/Models/MachineInfoModel/" \
                    "$$PWD/Models/ModeModel/" \
                    "$$PWD/Models/Offline/" \
                    "$$PWD/Models/ProductModeModel/" \
                    "$$PWD/Models/RemoteUpdateModel/" \
                    "$$PWD/Models/Statistics/" \
                    "$$PWD/Models/Statistics/EjectorRatesPerEjectorModel/" \
                    "$$PWD/Models/SysUtilsModel/" \
                    "$$PWD/Models/Storage/" \
                    "$$PWD/Models/TouchscreenModel/" \
                    "$$PWD/Models/UserAccessModel/" \
                    "$$PWD/Models/VibratorOverrideModel/" \
                    "$$PWD/Models/WiperModel/" \
                    "$$PWD/Tools/" \
                    "$(SPLINTLIB)/Interface/" \
                    "$(SPLINTLIB)/Interface/Win32" \
                    "$(Boost173)"
    
    # The .cpp file which was generated for your project. Feel free to hack it.
    SOURCES += main.cpp \
        Declaratives/cursorshapearea.cpp \
        ExceptionHandlingQApplication.cpp \
        ImageProviders/colouriserimageprovider.cpp \
        ImageProviders/defectimageprovider.cpp \
        ImageProviders/localisationimageprovider.cpp \
        Models/debughelper.cpp \
        Models/listmodel.cpp \
        Models/movingmaximumscaler.cpp \
        Models/splintsupport.cpp \
        Models/sortproxylistmodel.cpp \
        Models/ActiveFaultsModel/activefaultsmodel.cpp \
        Models/ActiveFaultsModel/activefaultitem.cpp \
        Models/AnywareproModel/anywarepromodel.cpp \
        Models/AnywareproModel/anywareprosplintsender.cpp \
        Models/AnywareproModel/anywareprohandlers.cpp \
        Models/CacheProxyListModel/cacheproxylistmodel.cpp \
        Models/CalibrationModel/calibrationmodel.cpp \
        Models/CalibrationModel/calibrationmodelhandlers.cpp \
        Models/CalibrationSettingsModel/calibrationsettingsmodel.cpp \
        Models/CalibrationSettingsModel/calibrationsettingssplinthandlers.cpp \
        Models/CalibrationSettingsModel/calibrationsettingssplintsender.cpp \
        Models/ConnectionManagerModel/connectionmanagermodel.cpp \
        Models/ConnectionStatusModel/connectionstatussplintsender.cpp \
        Models/ConnectionStatusModel/connectionstatusmodel.cpp \
        Models/DateTimeUpdaterModel/datetimeupdatermodel.cpp \
        Models/DefectModel/defectmodel.cpp \
        Models/DefectModel/defectsplinthandlers.cpp \
        Models/DefectModel/defectlistitem.cpp \
        Models/DefectModel/defectsplintsender.cpp \
        Models/DiagnosticDumpModel/diagnosticdumpmodel.cpp \
        Models/DiagnosticTraceModel/diagnostictracemodel.cpp \
        Models/DiagnosticTraceModel/diagnostictracehandlers.cpp \
        Models/DiagnosticTraceModel/diagnostictracesplintsender.cpp \
        Models/DiagnosticTraceModel/driveinfolistmodel.cpp \
        Models/DiagnosticTraceModel/removedriverbyletter.cpp \
        Models/DiagnosticTraceModel/tarball.cpp \
        Models/DisabledComponentsModel/disabledcomponentsmodel.cpp \
        Models/DisabledComponentsModel/disabledcomponentitem.cpp \
        Models/DivisionInfoModel/divisioninfomodel.cpp \
        Models/DivisionInfoModel/divisioninfolistmodel.cpp \
        Models/DivisionInfoModel/divisioninfohandlers.cpp \
        Models/EjectorTestsModel/ejectortestsmodel.cpp \
        Models/ExternalConnectionsModel/externalconnectionsmodel.cpp \
        Models/FaultModel/disabledfaultsourcelistmodel.cpp \
        Models/FaultModel/faultmodelhandlers.cpp \
        Models/FaultModel/faultmodel.cpp \
        Models/FaultModel/faultlistmodel.cpp \
        Models/FaultModel/faultmodelfriendlynames.cpp \
        Models/FaultModel/faultsplintsender.cpp \
        Models/FaultLogModel/faultlogmodelhandlers.cpp \
        Models/FaultLogModel/faultlogmodel.cpp \
        Models/FaultLogModel/faultloglistmodel.cpp \
        Models/FaultLogModel/faultlogsplintsender.cpp \
        Models/FeedControlModel/feedcontrolmodel.cpp \
        Models/FeedControlModel/feedcontrolitem.cpp \
        Models/FeedConfigModel/feedconfigmodel.cpp \
        Models/FeedConfigModel/feedconfigitem.cpp \
        Models/GlobalStateModel/globalstatemodel.cpp \
        Models/HistoricalData/historicaldatasplintsender.cpp \
        Models/HistoricalData/historicalejectiondata.cpp \
        Models/HistoricalData/historicalthroughputdata.cpp \
        Models/IOSensorModel/iosensorlistmodel.cpp \
        Models/IOSensorModel/iosensormodel.cpp \
        Models/IOSensorModel/iosensorsplinthandlers.cpp \
        Models/IOSensorModel/iosensorsplintsender.cpp \
        Models/LocalisationUpdateModel/localisationupdate.cpp \
        Models/LocalisationUpdateModel/localisationupdatemodel.cpp \
        Models/MachineInfoModel/infodetaillistitem.cpp \
        Models/MachineInfoModel/machineinfolistmodel.cpp \
        Models/MachineInfoModel/machineinfomodel.cpp \
        Models/MachineIDModel/machineidsplintsender.cpp \
        Models/MachineIDModel/machineidmodelhandlers.cpp \
        Models/MachineIDModel/machineidmodel.cpp \
        Models/ModeModel/productmodemodel.cpp \
        Models/ModeModel/productmodehandlers.cpp \
        Models/ProductModeModel/modemodel.cpp \
        Models/ProductModeModel/modelistmodel.cpp \
        Models/ProductModeModel/modehandlers.cpp \
        Models/TouchscreenModel/touchscreenmodel.cpp \
        Models/NetworkModel/networkmodel.cpp \
        Models/NetworkModel/wmihelper.cpp \
        Models/Offline/data.cpp \
        Models/Offline/defect.cpp \
        Models/Offline/division.cpp \
        Models/PartsAge/wiperagemodel.cpp \
        Models/PartsAge/partsagesplintsender.cpp \
        Models/PartsAge/partsagesplinthandlers.cpp \
        Models/PartsAge/lightingagemodel.cpp \
        Models/PartsAge/lightingagelistmodel.cpp \
        Models/PartsAge/ejectoragemodel.cpp \
        Models/PartsAge/ejectoragelistmodel.cpp \
        Models/PolisherModel/polishermodel.cpp \
        Models/PolisherModel/polishsplintsender.cpp \
        Models/PolisherModel/polishsplinthandlers.cpp \
        Models/ProxyProperty/ProxyProperty.cpp \
        Models/ProductModeModel/modesplintsender.cpp \
        Models/RemoteUpdateModel/remoteupdatemodel.cpp \
        Models/RemoteUpdateModel/remoteupdatesplintsender.cpp \
        Models/RemoteUpdateModel/remoteupdatesplinthandlers.cpp \
        Models/SoftwareVersionsModel/softwareversionsmodel.cpp \
        Models/SoftwareVersionsModel/softwareversionssplintsender.cpp \
        Models/SoftwareVersionsModel/softwareversionslistmodel.cpp \
        Models/Statistics/EjectorRatesPerEjectorModel/getejectorratesdecoder.cpp \
        Models/Statistics/EjectorRatesPerEjectorModel/ejectorratesplinthandlers.cpp \
        Models/Statistics/EjectorRatesPerEjectorModel/ejectorratesperejectormodel.cpp \
        Models/Statistics/getthroughputperdivisiondecoder.cpp \
        Models/Storage/storagehelper.cpp \
        Models/SysUtilsModel/sysutilsmodel.cpp \
        Models/UserAccessModel/userlistitem.cpp \
        Models/UserAccessModel/useraccesssplintsender.cpp \
        Models/UserAccessModel/useraccesssplinthandlers.cpp \
        Models/UserAccessModel/useraccessmodel.cpp \
        Models/UserAccessModel/userfilehandler.cpp \
        Models/UserAccessModel/currentuserhelper.cpp \
        Models/UserAccessModel/useraccessauthentication.cpp \
        Models/VibratorOverrideModel/vibratoroverridemodel.cpp \
        Models/VibratorOverrideModel/vibratoroverridesplinthandlers.cpp \
        Models/VibratorOverrideModel/vibratoroverridesplintsender.cpp \
        Models/WiperIntervalModel/wiperintervalsplintsender.cpp \
        Models/WiperIntervalModel/wiperintervalsplinthandlers.cpp \
        Models/WiperIntervalModel/wiperintervalmodel.cpp \
        Models/WiperModel/wipermodel.cpp \
        Tools/customtranslator.cpp \
        Tools/localisationinstall.cpp \
        Tools/localisationmanager.cpp \
        Tools/screenshottool.cpp \
        Tools/usbhelper.cpp
    
    HEADERS += \
        version.h \
        win.h \
        Declaratives/cursorshapearea.h \
        ExceptionHandlingQApplication.h \
        ImageProviders/colouriserimageprovider.h \
        ImageProviders/defectimageprovider.h \
        ImageProviders/localisationimageprovider.h \
        Models/debughelper.h \
        Models/globals.h \
        Models/listmodel.h \
        Models/movingmaximumscaler.h \
        Models/splintsupport.h \
        Models/systemmodelconstructor.h \
        Models/ActiveFaultsModel/activefaultsmodel.h \
        Models/ActiveFaultsModel/activefaultitem.h \
        Models/AnywareproModel/anywareprohandlers.h \
        Models/AnywareproModel/anywareprosplintsender.h \
        Models/AnywareproModel/anywarepromodel.h \
        Models/CacheProxyListModel/cacheproxylistmodel.h \
        Models/CalibrationModel/calibrationmodel.h \
        Models/CalibrationModel/calibrationmodelhandlers.h \
        Models/CalibrationSettingsModel/calibrationsettingsmodel.h \
        Models/CalibrationSettingsModel/calibrationsettingssplinthandlers.h \
        Models/CalibrationSettingsModel/calibrationsettingssplintsender.h \
        Models/ConnectionManagerModel/connectionmanagermodel.h \
        Models/ConnectionStatusModel/connectionstatusmodel.h \
        Models/ConnectionStatusModel/connectionstatussplintsender.h \
        Models/DateTimeUpdaterModel/datetimeupdatermodel.h \
        Models/DefectModel/defectid.h \
        Models/DefectModel/defectlistitem.h \
        Models/DefectModel/defectlistmodel.h \
        Models/DefectModel/defectmodel.h \
        Models/DefectModel/defectsplinthandlers.h \
        Models/DefectModel/defectsplintsender.h \
        Models/DiagnosticDumpModel/diagnosticdumpmodel.h \
        Models/DiagnosticTraceModel/diagnostictracehandlers.h \
        Models/DiagnosticTraceModel/diagnostictracemodel.h \
        Models/DiagnosticTraceModel/diagnostictracesplintsender.h \
        Models/DiagnosticTraceModel/driveinfolistmodel.h \
        Models/DiagnosticTraceModel/removedrivebyletter.h \
        Models/DiagnosticTraceModel/tarball.h \
        Models/DisabledComponentsModel/disabledcomponentitem.h \
        Models/DisabledComponentsModel/disabledcomponentsmodel.h \
        Models/DivisionInfoModel/divisioninfohandlers.h \
        Models/DivisionInfoModel/divisioninfolistmodel.h \
        Models/DivisionInfoModel/divisioninfomodel.h \
        Models/EjectorTestsModel/ejectortestsmodel.h \
        Models/ExternalConnectionsModel/externalconnectionsmodel.h \
        Models/FaultModel/disabledfaultsourcelistmodel.h \
        Models/FaultModel/faultlistmodel.h \
        Models/FaultModel/faultmodel.h \
        Models/FaultModel/faultmodelhandlers.h \
        Models/FaultModel/faultsplintsender.h \
        Models/FaultLogModel/faultloglistmodel.h \
        Models/FaultLogModel/faultlogmodel.h \
        Models/FaultLogModel/faultlogmodelhandlers.h \
        Models/FaultLogModel/faultlogsplintsender.h \
        Models/FeedControlModel/feedcontrolitem.h \
        Models/FeedControlModel/feedcontrolmodel.h \
        Models/FeedConfigModel/feedconfigitem.h \
        Models/FeedConfigModel/feedconfigmodel.h \
        Models/GlobalStateModel/globalstatemodel.h \
        Models/HistoricalData/historicaldatasplintsender.h \
        Models/HistoricalData/historicalejectiondata.h \
        Models/HistoricalData/historicalthroughputdata.h \
        Models/IOSensorModel/iosensorlistmodel.h \
        Models/IOSensorModel/iosensormodel.h \
        Models/IOSensorModel/iosensorsplinthandlers.h \
        Models/IOSensorModel/iosensorsplintsender.h \
        Models/LocalisationUpdateModel/localisationupdate.h \
        Models/LocalisationUpdateModel/localisationupdatemodel.h \
        Models/MachineIDModel/machineidmodelhandlers.h \
        Models/MachineIDModel/machineidmodel.h \
        Models/MachineIDModel/machineidsplintsender.h \
        Models/MachineInfoModel/infodetaillistitem.h \
        Models/MachineInfoModel/infotypelistitem.h \
        Models/MachineInfoModel/machineinfolistitem.h \
        Models/MachineInfoModel/machineinfolistmodel.h \
        Models/MachineInfoModel/machineinfomodel.h \
        Models/ModeModel/imodemodel.h \
        Models/ModeModel/modeitem.h \
        Models/ModeModel/productmodehandlers.h \
        Models/ModeModel/productmodemodel.h \
        Models/NetworkModel/networkmodel.h \
        Models/NetworkModel/wmihelper.h \
        Models/Offline/data.h \
        Models/Offline/defect.h \
        Models/Offline/division.h \
        Models/PartsAge/ejectoragelistmodel.h \
        Models/PartsAge/ejectoragemodel.h \
        Models/PartsAge/IDecoderCallback.h \
        Models/PartsAge/lightingagelistmodel.h \
        Models/PartsAge/lightingagemodel.h \
        Models/PartsAge/partsagesplinthandlers.h \
        Models/PartsAge/partsagesplintsender.h \
        Models/PartsAge/wiperagemodel.h \
        Models/PolisherModel/polishermodel.h \
        Models/PolisherModel/polishsplinthandlers.h \
        Models/PolisherModel/polishsplintsender.h \
        Models/ProductModeModel/modehandlers.h \
        Models/ProductModeModel/modelistmodel.h \
        Models/ProductModeModel/modemodel.h \
        Models/ProductModeModel/modesplintsender.h \
        Models/ProxyProperty/ProxyProperty.h \
        Models/RemoteUpdateModel/remoteupdatemodel.h \
        Models/RemoteUpdateModel/remoteupdatesplinthandlers.h \
        Models/RemoteUpdateModel/remoteupdatesplintsender.h \
        Models/SoftwareVersionsModel/softwareversionslistmodel.h \
        Models/SoftwareVersionsModel/softwareversionsmodel.h \
        Models/SoftwareVersionsModel/softwareversionssplintsender.h \
        Models/SortProxyListModel.h \
        Models/Statistics/EjectorRatesPerEjectorModel/ejectorratesperejectormodel.h \
        Models/Statistics/EjectorRatesPerEjectorModel/ejectorratesplinthandlers.h \
        Models/Statistics/EjectorRatesPerEjectorModel/getejectorratesdecoder.h \
        Models/Statistics/bindatadecoders.h \
        Models/Statistics/ejectorrate.h \
        Models/Statistics/getthroughputperdivisiondecoder.h \
        Models/Statistics/selectablelistmodel.h \
        Models/Statistics/selectablelistitem.h \
        Models/Statistics/throughput.h \
        Models/Storage/storagehelper.h \
        Models/SysUtilsModel/sysutilsmodel.h \
        Models/Statistics/defectstatistics.h \
        Models/Statistics/defectstatisticsdecoder.h \
        Models/TouchscreenModel/touchscreenmodel.h \
        Models/UserAccessModel/currentuserhelper.h \
        Models/UserAccessModel/userfilehandler.h \
        Models/UserAccessModel/useraccessmodel.h \
        Models/UserAccessModel/useraccesssplinthandlers.h \
        Models/UserAccessModel/useraccesssplintsender.h \
        Models/UserAccessModel/userlistitem.h \
        Models/VibratorOverrideModel/vibratoroverridemodel.h \
        Models/VibratorOverrideModel/vibratoroverridesplinthandlers.h \
        Models/VibratorOverrideModel/vibratoroverridesplintsender.h \
        Models/WiperIntervalModel/wiperintervalsplintsender.h \
        Models/WiperIntervalModel/wiperintervalsplinthandlers.h \
        Models/WiperIntervalModel/wiperintervalmodel.h \
        Models/WiperModel/wipermodel.h \
        Tools/customtranslator.h \
        Tools/localisationinstall.h \
        Tools/localisationmanager.h \
        Tools/screenshottool.h \
        Tools/usbhelper.h
    
    LIBS += -L"$(Boost173)/lib32-msvc-14.1/"
    LIBS += -lcomsupp -lsetupapi -lIphlpapi -lwbemuuid -lWs2_32 -lole32 -lAdvapi32
    
    win32:CONFIG(release, debug|release): LIBS += -L"$(SPLINTLIB)/Binary/Win32/release/" -lSPLINT_API
    else:win32:CONFIG(debug, debug|release): LIBS += -L"$(SPLINTLIB)/Binary/Win32/debug/" -lSPLINT_APId
    
    win32:CONFIG(release, debug|release): DEPENDPATH += "$(SPLINTLIB)/Binary/Win32/Release/"
    else:win32:CONFIG(debug, debug|release): DEPENDPATH += "$(SPLINTLIB)/Binary/Win32/Debug/"
    
    DEFINES += BOOST_THREAD_USE_DLL
    DEFINES += QT_DEPRECATED_WARNINGS
    QMAKE_LFLAGS_RELEASE += /INCREMENTAL:NO /DEBUG /opt:ref,icf
    QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS,5.01 #Enable running on WinXp
    QMAKE_CXXFLAGS += -D_SCL_SECURE_NO_WARNINGS
    QMAKE_CFLAGS_RELEASE += /zi
    QMAKE_CXXFLAGS_RELEASE += -DSUPPRESS_ERROR_DIALOG
    QMAKE_CXXFLAGS_RELEASE -= -Zc:strictStrings # MS Wbemdisp.h (among others) in Windows SDK 8.1 violates this rule
                                                # See: https://msdn.microsoft.com/en-us/library/dn449508.aspx
    
    TRANSLATIONS = sortexS_en.ts \
                   sortexS_es.ts \
                   sortexS_fr.ts \
                   sortexS_it.ts \
                   sortexS_kr.ts \
                   sortexS_pt.ts \
                   sortexS_ru.ts \
                   sortexS_th.ts \
                   sortexS_tr.ts \
                   sortexS_vi.ts \
                   sortexS_xx.ts \
                   sortexS_xy.ts
    
    CODECFORTR = UTF-8
    CODECFORSRC = UTF-8
    
    lupdate_only {
        SOURCES +=  CRUX_Prototype/qml/*.qml
        SOURCES +=  CRUX_Prototype/qml/Keyboard/*.qml
        SOURCES +=  CRUX_Prototype/qml/MenuHierarchy/*.qml
        SOURCES +=  CRUX_Prototype/qml/pinpad/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Calibration/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_DefectOverview/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Diagnostic/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_HomeScreen/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_MachineInfo/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_MachineInfo/PartsAge/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_MachineInfo/Statistics/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_MachineInfo/Statistics/*.js
        SOURCES +=  CRUX_Prototype/qml/View_Mode/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Settings/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Settings/AccessControl/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Settings/PlantInterface/*.qml
        SOURCES +=  CRUX_Prototype/qml/View_Settings/Vibrators/*.qml
    }
    
    DISTFILES +=
    

    This is the Compile Output:

    	link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS,5.01 "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST:embed /OUT:debug\MillikanUI.exe @C:\Users\u49100\AppData\Local\Temp\MillikanUI.exe.17756.851437.jom
    LINK : fatal error LNK1104: cannot open file 'boost_thread-vc120-mt-gd-x32-1_73.lib'
    jom: C:\Users\u49100\Documents\CA20-2501-Millikan-UI\build-MillikanUI-Desktop_Qt_5_8_0_MSVC2013_32bit-Debug\Makefile.Debug [debug\MillikanUI.exe] Error 1104
    jom: C:\Users\u49100\Documents\CA20-2501-Millikan-UI\build-MillikanUI-Desktop_Qt_5_8_0_MSVC2013_32bit-Debug\Makefile [debug] Error 2
    15:00:01: The process "C:\Qt\Qt5.8.0\Tools\QtCreator\bin\jom.exe" exited with code 2.
    Error while building/deploying project MillikanUI (kit: Desktop Qt 5.8.0 MSVC2013 32bit)
    When executing step "Make"
    15:00:01: Elapsed time: 14:18.
    

    At the end of the build process, there is a single issue:

    :-1: error: LNK1104: cannot open file 'boost_thread-vc120-mt-gd-x32-1_73.lib'
    

    Where is this specified?


  • Lifetime Qt Champion

    @SPlatten said in Qt 5.8 and Boost 1.73, how or where to specify libraries?:

    Where is this specified?

    Nothing Qt-related here. It's a msvc 'feature' used by boost: https://www.boost.org/doc/libs/1_70_0/more/getting_started/windows.html#auto-linking



  • @Christian-Ehrlicher , actually after searching around it is a Qt problem, Qt 5.8 only supports compilers MSVC 2015 and MSVC 2013, not MSVC 2017.


  • Lifetime Qt Champion

    @SPlatten said in Qt 5.8 and Boost 1.73, how or where to specify libraries?:

    Qt 5.8 only supports compilers MSVC 2015 and MSVC 2013, not MSVC 2017.

    And what do you want to tell me with this?



  • @Christian-Ehrlicher , I know that its the same version of Qt Creator that is used to build Qt 5.8 and newer versions, is there any way to get Qt Creator to compile using the MSVC 2017 compiler when using Qt 5.8, I have both 2013 and 2017 installed.

    I don't see any option to change the compiler being used.


  • Moderators

    @SPlatten said in Qt 5.8 and Boost 1.73, how or where to specify libraries?:

    I don't see any option to change the compiler being used.

    You create a custom Kit: https://doc.qt.io/qtcreator/creator-targets.html Link Qt 5.8 to your compiler from MSVC 2017. Then, use that kit to build your project.

    Note: This only works if you've installed Qt 5.8 for MSVC 2015. It won't work with Qt 5.8 for MSVC 2013.

    I am porting this to Qt 5.8

    May I ask why? Qt 5.8 reached end-of-life in 2018. Why not port to Qt 5.12 LTS or even Qt 5.15?

    I know that its the same version of Qt Creator that is used to build Qt 5.8 and newer versions

    Qt Creator is an IDE. Its version has no bearing on what is and isn't supported by the Qt libraries.

    Anyway, Qt Creator is not involved with building the Qt libraries that you download -- they're all built from the console.

    actually after searching around it is a Qt problem, Qt 5.8 only supports compilers MSVC 2015 and MSVC 2013, not MSVC 2017.

    I'm with @Christian-Ehrlicher here; I don't see how this is a Qt problem. Can you elaborate more on what you're thinking?



  • @JKSH , I completely agree regarding the age and obsolesce issue on Qt 5.8, but in this case it isn't my decision. The company I'm contracted to hasn't decided to upgrade yet.

    Regarding the relevance, I see it as Qt related because the build tool is Qt Creator and I needed advice on how to get it to build using the correct compiler, presently its looking for libraries using the v120 (MSVC 2013) spec. I need to change this to v141 (MSVC 2017).


  • Moderators

    @SPlatten said in Qt 5.8 and Boost 1.73, how or where to specify libraries?:

    presently its looking for libraries using the v120 (MSVC 2013) spec. I need to change this to v141 (MSVC 2017).

    You must uninstall Qt 5.8 for MSVC 2013 and install Qt 5.8 for MSVC 2015.

    Then, see my previous post about creating a custom Kit to use the MSVC 2017 compiler.



  • @JKSH , thank you, and thats why its a Qt related issue, hence the post to get your support which I have.


  • Moderators

    You're welcome.

    @SPlatten said in Qt 5.8 and Boost 1.73, how or where to specify libraries?:

    thats why its a Qt related issue

    Your issue was only partly related to configuring tools in Qt Creator.

    The other part that you should understand is MSVC's compatibility guarantees: https://docs.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=vs-2019


Log in to reply