使用 msvc /MDd cryptlib.lib 构建 Crypto++ 链接时找不到 cryptopp.lib

Crypto++ build with msvc /MDd cryptlib.lib Can't find cryptopp.lib when linking

我构建了库的最后一个可用版本 (5.6.5),想在 Qt msvc 项目中使用它。问题是,linker 出于某种原因想要在构建 fips dll 时生成的 cryptopp.lib。

这是我的配置(只有相关的):

INCLUDEPATH += $$PWD/thirdparty/Win/cryptopp/include
LIBS += -L$$PWD/thirdparty/Win/cryptopp/debug/ -lcryptlib

编译器输出:

LINK : fatal error LNK1104: cannot open file 'cryptopp.lib'

编辑: link命令+结果:结果同上。

link /NOLOGO /DYNAMICBASE /NXCOMPAT /NODEFAULTLIB:MSVCRT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST:embed /OUT:debug\QtTrafficBrowser.exe @C:\Users\Mij\AppData\Local\Temp\QtTrafficBrowser.exe.1316.6203.jom LINK : fatal error LNK1104: cannot open file 'cryptopp.lib' jom: C:\Users\Mij\qt_creator\qtTrafficBrowser\build-QtTrafficBrowser-Desktop_Qt_5_8_0_MSVC2015_32bit-Debug\Makefile.Debug [debug\QtTrafficBrowser.exe] Error 1104 jom: C:\Users\Mij\qt_creator\qtTrafficBrowser\build-QtTrafficBrowser-Desktop_Qt_5_8_0_MSVC2015_32bit-Debug\Makefile [debug] Error 2

我没有尝试使用 DLL!!我知道它不一样,而且我从一开始就知道,所以不要再要求我不要使用它了。问题是,当 link 与 cryptlib.lib 连接时,link 用户也要求 cryptopp.lib。清楚了吗?

我傻了。 我将 dll.h 添加到我的项目中,这就是它要求 cryptopp.lib 的原因。 删除它,繁荣,工作。

遇到类似问题的人,也看看这个。 LNK1104 Cryptopp.lib with CRYPTOPP_DEFAULT_NO_DLL defined in dll project