使用sqlite_has_codec 64位在c ++ visual studio项目上进行sqlite3加密

时间:2018-03-09 19:41:51

标签: c++ visual-studio sqlite openssl mingw

我正在尝试使用sqlite3.c和c ++ CppSqlite3.cpp中的包装器编译项目。它是用纯粹的魔法编译的32位而不是64位。

在我的c / c ++编译器中,我包含了这个:

C:\MinGW\msys\1.0\bin; 
C:\MinGW\bin;
C:\OpenSSL-Win32\openssl-1.0.2e\include; 
C:\JDK\include;
C:\JDK\include\win32;

在我的链接器中,我包含了这个:

C:\Haylem\Devtools\Compiler\OpenSSL\lib

并使用此lib:

libeay32.dll.a

所有这一切都以32位奇迹运行,但在64位中我得到22个未解析的外部符号,例如这一个:

  

严重级代码描述项目文件行抑制状态   错误LNK2001未解析的外部符号_EVP_CIPHER_key_length xxxx_project_xxxx sqlite3.obj 1

我知道这与openssl,libcrypt有关,但我想x64需要另一个lib吗?我在哪里可以找到这个?感谢

1 个答案:

答案 0 :(得分:0)

我发现问题,如果有人有一天得到那些未解决的外部符号。这是openSSL库的链接器错误。你需要libeay32.lib 64位,即使它说libeay 32 .lib在网上预编译了32和x64版本。