我正在尝试为项目的 Crypto++ 库编写一些简单的测试代码。我还没有设法让我自己的代码来构建。它编译得很好,问题出在链接上。我对 Visual Studios 还是很陌生,但我使用的是 VS10。我得到的错误是:
1>sec_test.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CryptoPP::DES::Base::ProcessAndXorBlock(unsigned char const *,unsigned char const *,unsigned char *)const " (?ProcessAndXorBlock@Base@DES@CryptoPP@@UBEXPBE0PAE@Z)
1>sec_test.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CryptoPP::DES::Base::UncheckedSetKey(unsigned char const *,unsigned int,class CryptoPP::NameValuePairs const &)" (?UncheckedSetKey@Base@DES@CryptoPP@@UAEXPBEIABVNameValuePairs@3@@Z)
在链接方面,我已经尝试了在文档中可以找到的所有内容。我以前从未链接过 DLL,但这些是我尝试链接时遇到的错误。如果我尝试做我认为链接静态库版本的事情,我会得到更多。
我应该注意,我目前正在尝试测试纯 DES。特别是,为了安全起见,这是我正在进行的 API 调用:
DES::Encryption DES_encrypt;
DES_encrypt.SetKey(key, 64);
DES_encrypt.ProcessAndXorBlock(plaintext, NULL, ciphertext);
DES::Decryption DES_decrypt;
DES_decrypt.SetKey(key, 64);
DES_decrypt.ProcessAndXorBlock(ciphertext, NULL, decrypted);
如果有人可以提供帮助或指出正确的方向,我将不胜感激。