2

Crypto++ (Code::Blocks を使用) を使用して C++ プログラムを作成しようとしていますが、同じ問題が発生し続けます。このコードのカットダウン バージョンを使用しています: http://andreyvitdev.blogspot.com/2005/10/crypto-usage-sample.html ですが、コンパイルできません。

#include "cryptopp/blowfish.h"
#include "cryptopp/osrng.h"

using namespace CryptoPP;

int main (int argc, char** argv) {

    byte key[Blowfish::DEFAULT_KEYLENGTH],
            iv[Blowfish::BLOCKSIZE];

    AutoSeededRandomPool rng (true);
    rng.GenerateBlock(key, sizeof (key));
    rng.GenerateBlock(iv, sizeof (iv));

}

「C:\Users\Utilisateur\Programming\C++\CodeBlocks\Crytp tester\main.cpp|13|`CryptoPP::RandomNumberGenerator::GenerateBlock(unsigned char*, unsigned int) への未定義参照」で始まる複数のエラーが発生します。 」

何か不足していますか?インポートする必要があるライブラリへの参照がさまざまなサイトに多数ありますが、crypto++ フォルダーのどこにあるのかわかりませんでした: http://www.cryptopp.com/#download

4

1 に答える 1

5

「未定義の参照」はリンカー エラーです。Crypto++ ライブラリをビルドしていないか、リンカーにリンクするように指示していません。

ただし、MinGW (コード ブロックを使用する最も一般的なコンパイラ) を使用してビルドされるかどうかはわかりません。Microsoft コンパイラ (および Visual Studio) は無料です。Code::Blocks と Crypto++ の両方で明示的にテストされています。

于 2011-08-10T16:35:16.683 に答える