none
Visual C++ 2005 で crypt32.lib が見つからない RRS feed

  • 質問

  • OpenSSL-0.9.8i をコンパイルしようとしたのですが、次のようなエラーになり失敗しました。

    Code Snippet
            link /nologo /subsystem:console /opt:ref /debug /out:out32.dbg\md2test.exe @C:\DOCUME~1\maya\LOCALS~1\Temp\nm32.tmp
    LINK : fatal error LNK1181: 入力ファイル 'crypt32.lib' を開けません。
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\BIN\link.EXE"' : リターン コード '0x49d'
    Stop.

     

    Web を検索したところ、Visual Studio 2005 Standard では crypt32.lib が

    正しくインストールされないらしいという情報が見つかりました。

    http://www.google.co.jp/search?num=50&hl=ja&q=crypt32.lib&lr=lang_ja

     

    正しくインストールするにはどうしたらよいでしょうか。

     

    2008年9月20日 8:23

回答

  • Visual Studio 2005 Standardだけで「正しくインストールする」はできないって結論なんじゃないですか?

    Googleの検索で出てくるように、Platform SDKをインストールして、Platform SDKのパスを通せばいけるとは思います。

    (パスを通す=インクルードディレクトリ、ライブラリディレクトリ、実行可能ファイルディレクトリを設定すること)

     

    実際のディレクトリの名前は異なると思いますが、下記の記事が参考になるのではないでしょうか。

    http://blogs.wankuma.com/tocchann/archive/2006/05/18/25272.aspx

    2008年9月20日 10:41
    モデレータ
  • えっと、リンクが張られていたので...w

     

    Visual Studio 2005(Standard Edition以上) に含まれるSDKは、当時のPlatform SDK のサブセットバージョンです。

    サブセットなので、フルセットにはあるが含めていないものはいくつか存在します。それなんてバグ?というようなものから、明らかに必要なしという判断だろうとわかるものまで。

    含まれないものがなんであれ、もし足りないということになれば、PlatfromSDK を別途インストールするというほうがよいと思います。

    また、Std 以上であれば、私のブログのようなフォローは必要なく、SDK側でフォローしてくれます。

     

    実際のところ、結構抜けてるものがあったりするので(Pro や Teamでも)、なければ、SDKを入れるというくらいのつもりで十分だと思いますよ。

     

    2008年9月22日 6:26

すべての返信

  • Visual Studio 2005 Standardだけで「正しくインストールする」はできないって結論なんじゃないですか?

    Googleの検索で出てくるように、Platform SDKをインストールして、Platform SDKのパスを通せばいけるとは思います。

    (パスを通す=インクルードディレクトリ、ライブラリディレクトリ、実行可能ファイルディレクトリを設定すること)

     

    実際のディレクトリの名前は異なると思いますが、下記の記事が参考になるのではないでしょうか。

    http://blogs.wankuma.com/tocchann/archive/2006/05/18/25272.aspx

    2008年9月20日 10:41
    モデレータ
  • いまひとつよく分かっていないのですが、VS2005 Standard Edition以上には Platform SDK は含まれていないのでしょうか?

    また、本件はVS2005のバグであり、VS2008を使えば解決する、ということでしょうか?

     

    2008年9月21日 14:02
  •  yutakakn さんからの引用

    いまひとつよく分かっていないのですが、VS2005 Standard Edition以上には Platform SDK は含まれていないのでしょうか?

    C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK 以下がPlatform SDK相当になります。

     

     yutakakn さんからの引用

    また、本件はVS2005のバグであり、VS2008を使えば解決する、ということでしょうか?

    バグとは告知されていないようですが、普通にインストールして存在しないのであれば、バグと見なして良いかもしれません。

    VS2005 Professional、VS2008 ProfessionalではちゃんとCrypt32.libが存在することを確認しています。

     

     

    VS2008のStandardで問題が解決されているかについては分かりませんので、答えられません。

    2008年9月21日 14:47
    モデレータ
  • えっと、リンクが張られていたので...w

     

    Visual Studio 2005(Standard Edition以上) に含まれるSDKは、当時のPlatform SDK のサブセットバージョンです。

    サブセットなので、フルセットにはあるが含めていないものはいくつか存在します。それなんてバグ?というようなものから、明らかに必要なしという判断だろうとわかるものまで。

    含まれないものがなんであれ、もし足りないということになれば、PlatfromSDK を別途インストールするというほうがよいと思います。

    また、Std 以上であれば、私のブログのようなフォローは必要なく、SDK側でフォローしてくれます。

     

    実際のところ、結構抜けてるものがあったりするので(Pro や Teamでも)、なければ、SDKを入れるというくらいのつもりで十分だと思いますよ。

     

    2008年9月22日 6:26
  • こんにちは。中川俊輔 です。

     

    Azuleanさん、とっちゃんさん、回答ありがとうございます。

     

    maya87さん、フォーラムのご利用ありがとうございます。

    その後いかがでしょうか?

    有用な情報と思われたため、勝手ながら

    Azuleanさん、とっちゃんさんの回答へ回答済みチェックをつけさせていただきました。

     

    今後もフォーラムをよろしくお願いします。

    それでは!

    2008年10月6日 7:18