リンクの問題があります。私は共有ライブラリlibfoo.so
とリンクする必要があります。このライブラリは、read.cのファイルに自分自身を定義したい関数read
に依存しています。nmのレポートのシンボルが定義されていますが、lddのレポートのシンボルが定義されていません
私はコンパイルと一緒にすべてをリンクしますが、実行時に、私はシンボルが
$nm baz | grep sread
00000000000022f8 t sread
を定義したが、LDDは、シンボルが
$ldd -r baz | grep sread
undefined symbol: sread (/home/bar/src/libfoo.so)
を定義されていない報告された報告nmのエラー
/home/bar/src/libfoo.so: undefined symbol: sread.
を取得
何ができますか? libfoo.soが共有ライブラリであるという事実を持つisseがありますか?
あなたの共有オブジェクトと実行ファイルが完全にリンクされていなければ、被写体に光を当てるべきでしょう。 – lothar