2

OpenSSLの静的ライブラリが必要です。ここからの指示に従いました。私が行った手順は次のとおりです。

  1. 「VisualStudio2008x64CrossToolsコマンドプロンプト」を実行します。
  2. perlを実行しますVC-WIN64Aを設定しますno-sharedno-idea
  3. ms\do_win64aを実行します
  4. ms \ nt.makを編集し、出力ディレクトリの「32」を「64」に変更します。
  5. nmake -f ms\nt.makを実行します

これをすべて行った後、5番目のステップでエラーが発生します。

Assembling: tmp32\md5-x86_64.asm
tmp32\md5-x86_64.asm(8) : error A2009: syntax error in expression
tmp32\md5-x86_64.asm(9) : error A2009: syntax error in expression
tmp32\md5-x86_64.asm(677) : error A2009: syntax error in expression
tmp32\md5-x86_64.asm(678) : error A2009: syntax error in expression
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 8\VC
\BIN\x86_amd64\ml64.EXE"' : return code '0x1'
Stop.

ここで何が問題になっていますか?または、Visual Studio 20005で使用できるOpensslの静的ライブラリへのリンクを誰かに提供してもらえますか?

4

3 に答える 3

2

私はこの問題に対する答えを見つけました。どういうわけか、nasm私のマシンにインストールされていませんでした。ここに示されているエラーは、nasmについても何も述べていません。

于 2012-05-14T06:36:46.867 に答える
2

私も問題を抱えていて、Perlが古すぎることがわかりました。x86_64-xlate.plの次の行は、変数$ PTRが設定されていても、「PTR」を生成しませんでした。

$func .= "  mov QWORD${PTR}[8+rsp],rdi\t;WIN64 prologue\n";

ActiveState Perl 5.16.3をインストールすると、正常に機能しました。

(私はVisual Studio masmのみをインストールしていましたが、nasmではPTRキーワードが必要ないようであるため、生成されたコードはnasmで機能したと思います)。

于 2014-04-24T09:15:07.230 に答える
0

私の環境ではアクティブな状態も古いようです。正しいバージョンのnasmを使用していたかどうかはわかりませんが、ml64.exeはコマンドラインパラメーターによってnasmと互換性がありませんでした。人々は私が私の環境にasm変数を追加しなければならないと言いました。そこで、crypto \ perlasm \x86_64-xlate.plファイルで「PTR}[」から「PTR}[」へのグローバルな変更を行いました。変数の後にスペースを追加しました。

于 2016-06-30T18:18:04.677 に答える