AES のスタティックライブラリを作れた
VC++ 2008 EE でもビルドできた.ただし,使い方は把握していない.
- Brian Gladman's Main Page の「The AES source code files are here」という文から aes-src-dd-mm-yy.zip を入手する
- C:\Software\Develop\aesBrian に展開した
- MASATOの開発日記: aesライブラリ化から「aes用プロジェクトファイル」を入手する
- コードを展開したフォルダに置きなさいとあるが,何となく嫌だから C:\Software\Develop\aesBrianLib に展開した
- C:\Software\Develop\aesBrianLib\aes.vcproj を変換して開き,ビルドする
- ソリューションファイルの保存位置を問われる
- この時点ではソースファイルが同じフォルダにないから失敗に終わる
- ソリューションエクスプローラを見て,必要そうなファイルをコピーしてやる
- aes.h, aescpp.h, aesopt.h, aestab.h, aescrypt.c, aeskey.c, aestab.c
- ビルドを実行する
- 失敗する(失敗 A としてビルドログを後述する)
- brg_types.h をコピーしてビルドする
- 失敗する(失敗 B としてビルドログを後述する)
- brg_endian.h をコピーしてビルドする
- 失敗する(失敗 C としてビルドログを後述する)
- aes_via_ace.h をコピーしてビルドする
- 成功する(成功 A としてビルドログを後述する)
- /Wp64 オプションが,今後のバージョンでは削除されるそうだから外す
- プロジェクトオプションを開き,「すべての構成」を選び,「構成プロパティ>C/C++」で変更できる
- バッチビルドから全6つの構成にチェックをつけ,ビルドする
- 今までの実験で作っていたファイルを消すため,事前にクリーンしておく
- 成功する(成功 B としてビルドログを後述する)
失敗 A
1>------ ビルド開始: プロジェクト: aes, 構成: Debug MD Win32 ------ 1>コンパイルしています... 1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。 1>aeskey.c 1>c:\software\develop\aesbrianlib\aes.h(37) : fatal error C1083: include ファイルを開けません。'brg_types.h': No such file or directory 1>aestab.c 1>c:\software\develop\aesbrianlib\aes.h(37) : fatal error C1083: include ファイルを開けません。'brg_types.h': No such file or directory 1>aescrypt.c 1>c:\software\develop\aesbrianlib\aes.h(37) : fatal error C1083: include ファイルを開けません。'brg_types.h': No such file or directory 1>コードを生成中... 1>ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MD\BuildLog.htm" に保存されました。 1>aes - エラー 3、警告 1 ========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
失敗 B
1>------ ビルド開始: プロジェクト: aes, 構成: Debug MD Win32 ------ 1>コンパイルしています... 1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。 1>aeskey.c 1>c:\software\develop\aesbrianlib\aesopt.h(105) : fatal error C1083: include ファイルを開けません。'brg_endian.h': No such file or directory 1>aestab.c 1>c:\software\develop\aesbrianlib\aesopt.h(105) : fatal error C1083: include ファイルを開けません。'brg_endian.h': No such file or directory 1>aescrypt.c 1>c:\software\develop\aesbrianlib\aesopt.h(105) : fatal error C1083: include ファイルを開けません。'brg_endian.h': No such file or directory 1>コードを生成中... 1>ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MD\BuildLog.htm" に保存されました。 1>aes - エラー 3、警告 1 ========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
失敗 C
1>------ ビルド開始: プロジェクト: aes, 構成: Debug MD Win32 ------ 1>コンパイルしています... 1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。 1>aeskey.c 1>c:\software\develop\aesbrianlib\aeskey.c(32) : fatal error C1083: include ファイルを開けません。'aes_via_ace.h': No such file or directory 1>aestab.c 1>aescrypt.c 1>コードを生成中... 1>ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MD\BuildLog.htm" に保存されました。 1>aes - エラー 1、警告 1 ========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
成功 A
1>------ ビルド開始: プロジェクト: aes, 構成: Debug MD Win32 ------ 1>コンパイルしています... 1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。 1>aeskey.c 1>ライブラリを作成しています... 1>ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MD\BuildLog.htm" に保存されました。 1>aes - エラー 0、警告 1 ========== ビルド: 1 正常終了、0 失敗、0 更新、0 スキップ ==========
成功 B
------ ビルド開始: プロジェクト: aes, 構成: Release MT Win32 ------ コンパイルしています... aescrypt.c aestab.c aeskey.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Release MT\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ------ ビルド開始: プロジェクト: aes, 構成: Debug MT Win32 ------ コンパイルしています... aeskey.c aestab.c aescrypt.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MT\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ------ ビルド開始: プロジェクト: aes, 構成: Release MD Win32 ------ コンパイルしています... aescrypt.c aestab.c aeskey.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Release MD\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ------ ビルド開始: プロジェクト: aes, 構成: Debug MD Win32 ------ コンパイルしています... aeskey.c aestab.c aescrypt.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug MD\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ------ ビルド開始: プロジェクト: aes, 構成: Release ML Win32 ------ コンパイルしています... aescrypt.c aestab.c aeskey.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Release ML\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ------ ビルド開始: プロジェクト: aes, 構成: Debug ML Win32 ------ コンパイルしています... aeskey.c aestab.c aescrypt.c コードを生成中... ライブラリを作成しています... ビルドログは "file://c:\Software\Develop\aesBrianLib\Debug ML\BuildLog.htm" に保存されました。 aes - エラー 0、警告 0 ========== ビルド: 6 正常終了、0 失敗、0 更新、0 スキップ ==========