1

私は私のものを持っていて、soft.cそれを正常にコンパイルし、/usr/lib/myLib.so.

それが私が探しているものではないという事実を除いて、すべて問題ありません。リンクのために考慮される最終パスを管理したい、つまり、GCCにライブラリを考慮して/usr/lib/myLib.soもらいたいのですが、最終リンクを相対パス、ちょっと../myLib.so

通常のシナリオは

./softリンク先 ->/usr/lib/myLib.so

私が欲しい

./softリンク先 ->../myLib.so

明らかに、相互参照されたライブラリを管理するためにGCCも必要/usr/lib/myLib.soです../myLib.so.

それを達成する方法は?

ありがとう。

4

1 に答える 1

1

-rpathリンカーへのオプションを使用して、実行時の検索パス情報をバイナリに含めることができます( -Wl,-rpath,.

競合が早期に発見されるようにシステム全体のライブラリ検索パスが 1 つである必要があるため、これは一般にディストリビューションのメンテナーによって嫌われていることに注意してください。

于 2012-11-16T17:35:18.247 に答える