0

私はmakeを使用してubuntuでsrp-2.1.2をコンパイルしました、それはファイルlibsrp.aを作成します。libsrp.aを共有ライブラリとして使用する方法を教えてもらえますか?.dllimportを使用してubuntuのac#ファイルでlibsrpを使用したいです。libsrp.aファイルの意味を教えてください。

ありがとう

nm -D libsrp.aを使用している場合は、

c2 @ ubuntu:〜/ Desktop / srp-2.1.2 / libsrp $ nm -D libsrp.a

t_client.o:nm:t_client.o:記号なし

すべての記号を取得する方法を教えてください。

ありがとう

4

1 に答える 1

0

libsrp.aファイルは静的ライブラリです。共有ライブラリは のような名前になりますlibsrp.soここには、静的ライブラリから共有ライブラリを構築する方法を説明する回答があります (ただし、これを自分で行ったことがないため、機能することを保証することはできません-頑張ってください!)

アップデート:

引数で使用nmすると、-D動的シンボルが要求されます(チェックアウト)-共有ライブラリで呼び出しているときman nmに、男が使用していた質問にリンクしました。あなたは静的ライブラリなので、シンボルを確認するには、単に行う必要があります-Dnmlibsrp.a

nm libsrp.a

ただし、共有ライブラリを取得する方法を説明する回答を利用するためにシンボルを表示する必要はないと思います。答えが正しければgcc、正しい引数で呼び出す必要があります。共有ライブラリを取得しnmたら、期待するシンボルがあるかどうかを確認するために使用できると思います。その場合、次の引数必要になります。-D

nm -D libsrp.so
于 2010-04-14T11:22:27.517 に答える