。 OpenSSLをコンパイルする必要はありません。
開発マシンにパッケージをインストールします(Windowsの場合は、最新のインストーラhereを入手できます)。コードに含める必要があるヘッダーファイル(c:\OpenSSL-Win32\include\openssl
)、アプリケーションを(c:\OpenSSL-Win32\lib\VC
)にリンクするために必要な静的ライブラリ、およびアプリケーションが実行するDLL(c:\OpenSSL-Win32\bin
)が含まれます。
だから、あなたのコードでは、あなたが持っているでしょう:
#include <openssl/aes.h>
...
AES_set_encrypt_key(...);
...
AES_cfb128_encrypt(...);
...
あなたのコンパイラは、あなたが(openssl
ディレクトリへのパスを)含まれるヘッダへのパスを知っている必要がありますので、それを提供する必要があります。 Visual Studioを使用している場合は、プロジェクト設定を開き、追加のインクルードディレクトリにc:\OpenSSL-Win32\include
を追加します。
リンカーセクションで、追加の依存関係にssleay32MDd.lib;libeay32MDd.lib;
を追加すると、リンカーは検索するOpenSSLライブラリを知ることができます。これらのライブラリのパス - c:\OpenSSL-Win32\lib\VC
- 追加のライブラリディレクトリに追加します。
これらのライブラリはアプリケーションと同じランタイムライブラリにリンクする必要があります。それらのサフィックスは、それらがリンクされているランタイムライブラリを示します:上記のライブラリは、マルチスレッドDLL(/ MDd)を使用することを意味するサフィックスMDdを持っています。生成 - >ランタイムライブラリ設定)。
あなたのアプリケーションは今ビルドされますが、それを実行するためにバイナリはOpenSSL DLL libeay32.dll
にアクセスする必要があります。そのDLLをシステムディレクトリまたはアプリケーションを実行しているディレクトリにコピーするか、パスc:\OpenSSL-Win32\bin
〜Path
を環境変数に追加します。
ありがとう、これはうまくいきました。 –
ようこそ。私はそれが助けてうれしいです。 –