一、编译生成cryptlib.lib
1. 下载Crypto++源代码https://www.cryptopp.com/#download,解压得到文件夹cryptopp820
2. VS中打开cryptopp820目录下的cryptest.sln
看到4个项目
3. 修改项目cryptlib(右键→属性)的Windows SDK版本如下(此步骤或可不必)
4. 修改项目cryptlib的运行库为多线程调试MTd如下
5. cryptlib项目右键→生成
6. 上述步骤4和5是Debug模式下,现切换为Release模式
7. 修改项目cryptlib的运行库为多线程MT如下
8. cryptlib项目右键→生成
上述步骤后,可在cryptopp820\Win32\Output得到两个文件夹Debug和Release,Debug下是cryptlib.lib和cryptlib.pdb,Release下是cryptlib.lib
二、项目配置Crypto++
方法1:
1. 新建文件夹如CryptoPP,将cryptopp820中的所有头文件(175个)放入CryptoPP,将CryptoPP放入VS的include目录下如E:\ Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\include\CryptoPP
提示:使用方法
2. Debug模式下,将步骤一中生成的文件夹Debug中的“cryptlib.lib”放入VS的lib目录下如E:\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\lib\x86,Release模式相似
x86表示平台版本是32位,不必修改,注意即可
3.链接cryptlib.lib:在代码中加入语句#pragma comment(lib,"cryptlib.lib")
方法2:配置Crypto++SDK
1. 新建文件夹如E:\CryptoPP,在CryptoPP下新建文件夹include,将cryptopp820中的所有头文件(175个)放入include
提示:使用方法
2. 在E:\CryptoPP下新建文件夹lib,在lib中放入步骤一中生成的文件夹Debug和Release
3.VS中的目标项目→属性→C/C++→常规→附加包含目录→添加“E:\CryptoPP\include”
3. VS中的目标项目→属性→链接器→常规→附加库目录→添加“E:\CryptoPP\lib\Debug”和“E:\CryptoPP\lib\Release”
注意:使用Debug模式,将“E:\CryptoPP\lib\Debug”放前面,否则反之
4. VS中的目标项目→属性→链接器→输入→附加依赖项→添加“cryptlib.lib”
三、跑个小程序试试吧
#include <iostream>
#include <stdlib.h>
#include <cryptopp/aes.h>
using namespace std;
using namespace CryptoPP;
int main()
{
cout << "Hello Crypto++" << endl;
cout << "Aes block size is " << AES::BLOCKSIZE << endl;
system("pause");
return 0;
}
致谢参考:
https://blog.csdn.net/weixin_42314534/article/details/81840131