Qt在pro中设置运行时库MT、MTd、MD、MDd,重点关注QMAKE_CFLAGS
多线程调试Dll (/MDd) 对应的是MD_DynamicDebug
多线程Dll (/MD) 对应的是MD_DynamicRelease
多线程(/MT) 对应的是MD_StaticRelease
多线程(/MTd)对应的是MD_StaticDebug
win32:CONFIG(debug, debug|release): { LIBS += -L$$QMAKE_SKIA_DIR/out/Debug-x64 INCLUDEPATH += $$QMAKE_SKIA_DIR/out/Debug-x64 DEPENDPATH += $$QMAKE_SKIA_DIR/out/Debug-x64 QMAKE_CFLAGS_DEBUG += -MTd QMAKE_CXXFLAGS_DEBUG += -MTd } else:win32:CONFIG(release, debug|release): { LIBS += -L$$QMAKE_SKIA_DIR/out/Release-x64 INCLUDEPATH += $$QMAKE_SKIA_DIR/out/Release-x64 DEPENDPATH += $$QMAKE_SKIA_DIR/out/Release-x64 #win32:QMAKE_CXXFLAGS += /MD QMAKE_CFLAGS_RELEASE += -MT QMAKE_CXXFLAGS_RELEASE += -MT } #定义编译选项 #QT_DEPRECATED_WARNINGS表示当Qt的某些功能被标记为过时的,那么编译器会发出警告 DEFINES += QT_DEPRECATED_WARNINGS #指定编译器选项和项目配置 CONFIG += c++11 CONFIG += warn_on #告诉qmake要把编译器设置为输出警告信息的 CONFIG += precompile_header #可以在项目中使用预编译头文件的支持 #预编译头文件路径 PRECOMPILED_HEADER = $$PWD/stable.h #disable C4819 warning win32:QMAKE_CXXFLAGS_WARN_ON += -wd4819 win32:QMAKE_CXXFLAGS += /FS #win32:QMAKE_CXXFLAGS += /utf-8 #避免VC编译器关于fopen等应使用fopen_s的安全警告 win32:DEFINES += _CRT_SECURE_NO_WARNINGS
参考文献
https://blog.csdn.net/caoshangpa/article/details/51416077
https://doc.qt.io/qt-5/qmake-variable-reference.html Qt官网.pro文件的变量清单,多关注QMAKE_CXXFLAGS