使用 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
我构建了库的最后一个可用版本 (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