remove msvcp dll in qt plain c application.
run qt application without msvcp140.dll or vcruntime140.dll
主要是配置编译器的参数:
CONFIG(debug, debug|release): { # QMAKE_CFLAGS_DEBUG += -MTd # QMAKE_CXXFLAGS_DEBUG += -MTd }else{ QMAKE_CFLAGS_RELEASE += -MT QMAKE_CXXFLAGS_RELEASE += -MT }
静态编译 | 使用libc和msvc相关的静态库(lib)库中内容会直接编译到x.exe文件中,x.exe可独立运行 | MT、MTd |
动态编译 | 使用相应的DLL版本编译只需要x.dll文件,便于更新升级(替换x.dll文件) | Md、MDd |
各字母意思
字母解释
M multi-threading
--T text代码
--D dynamic
d debug
动态编译不方便发布
可以验证,当一个程序以/MD或/MDd发布时,该应用程序在别的电脑上可能无法运行。
提示错误:“应用程序配置不正确”
这是因为对方电脑上缺少VS的相关dll库。这时可以选择/MT或/MTd静态编译。
jin:博主你好!我最近在接触串口类的东西,有些问题看了您的文章后还是有些迷惑,不知可以留个邮箱或者联系方式吗?不胜感激!
2023-03-16 14:42:30 回复