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



我构建了该库的最后一个可用版本(5.6.5),希望在Qt-msvc项目中使用它。问题是,由于某种原因,链接器需要在构建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 /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:debugQtTrafficBrowser.exe @C:UsersMijAppDataLocalTempQtTrafficBrowser.exe.1316.6203.jom LINK : fatal error LNK1104: cannot open file 'cryptopp.lib' jom: C:UsersMijqt_creatorqtTrafficBrowserbuild-QtTrafficBrowser-Desktop_Qt_5_8_0_MSVC2015_32bit-DebugMakefile.Debug [debugQtTrafficBrowser.exe] Error 1104 jom: C:UsersMijqt_creatorqtTrafficBrowserbuild-QtTrafficBrowser-Desktop_Qt_5_8_0_MSVC2015_32bit-DebugMakefile [debug] Error 2

我没有试图使用DLL!!我知道它是不同的,我从一开始就知道它,所以不要再要求我不要使用它了。问题是,当链接到cryptlib.lib时,链接器也会要求使用cryptp.lib。清楚了吗?

我当时很笨。我在我的项目中添加了dll.h,这就是为什么它要求cryptopp.lib。把它拆了,轰隆隆,就行了。

有类似问题的人,也看看这个。LNK1104 Cryptopp.lib,在DLL项目中定义了Cryptopp_DEFAULT_NO_DLL

最新更新