1

依存関係ウォーカーを使用して、cygwin で移植されたアプリケーションのリンクが正しくない理由を突き止めています。

cgywin1.dll に次の記号がないことを示しています。

AddAtomA
FindAtomA
GetAtomNameA
GetModuleHandleA

http://wkf.thruhere.net/Hosting/undefined.png

周りを見回すと、これらは最後に追加したリンク行の -lkernel32 からのものであることがわかりますが、依存関係ウォーカーはこれらのシンボルが欠落していると表示しますが、以下の kernel32.dll もリストし、これらのシンボルを表示しますそこに定義されているように。

http://wkf.thruhere.net/Hosting/defined.png

4

1 に答える 1

0

-lkernel32 なしで試してください。自動的にリンクされるため、明示的に指定する必要はありません。リンク行で指定すると、リンクの順序が乱れる可能性があります。

于 2010-01-11T12:49:07.237 に答える