2

ライブラリファイルの作成に使用しているdefファイルがあります。ただし、(MinGWの)dlltoolを使用してこれを実行しようとすると、アセンブリファイルと空のライブラリファイルを作成するだけです。

アセンブリファイルの名前は毎回異なりますが、内容は同じです。以下は、アセンブリファイルの内容です。

# IMAGE_IMPORT_DESCRIPTOR
.section    .idata$2
.global _head_libnidaq_a
_head_libnidaq_a:
.rva    hname   #Ptr to image import by name list
#this should be the timestamp, but NT sometimes
#doesn't load DLLs when this is set.
.long   0   # loaded time
.long   0   # Forwarder chain
.rva    __libnidaq_a_iname  # imported dll's name
.rva    fthunk  # pointer to firstthunk
#Stuff for compatibility
.section    .idata$5
fthunk:
.section    .idata$4
hname:

誰かがここで何が起こっているのか知っていますか?

4

1 に答える 1

0

この質問がされてから 2 年後にここに記載されているように、この問題は、as.exe を含むディレクトリ (通常は [インストール場所]/mingw32/bin) がシステム パス上にない場合に発生します。残念ながら、詳細フラグ (-v) を指定して実行した場合、dlltool はこれについてのみ警告します (as.exe を実行しようとしたときに生成される「そのようなファイルまたはディレクトリはありません」というエラーをエコーすることによって)。

Windows コマンド プロンプトでコマンドset PATH=%PATH%;[installation location]/mingw32/binを実行してから dlltool を実行すると、この問題が解決します。

于 2016-01-28T19:33:12.177 に答える