使用している特定のツール チェーンでクロス コンパイルするときに rpath-link がどのように機能するかについての理解を確認するのに苦労しています (ただし、これはクロス コンパイル全般に適用される一般的な質問だと思います)。
ライブラリとアプリケーションをビルドするときにコンパイラとリンカーに渡されるフラグを確認すると、次のようにリンカーに渡されます。
-Wl,-rpath-link,/home/Dev/env/sys/crosscompiletoolchain/armle-v7/lib/
これは、私の開発マシンのターゲット デバイス用にビルドされている共有ライブラリに埋め込まれているパスです。デバイスに展開する前に、開発マシンですべての最終的なリンクを行うので、これは理にかなっています。最終的にデバイスにデプロイするとき (つまり、共有ライブラリ + アプリケーション)、それらの共有ライブラリには役に立たない rpath-link がありませんか?
ビルドされたライブラリとアプリケーションは、関係なくターゲットで正常に動作するように見えます。推測する必要がある場合、アプリケーションには、デフォルトのライブラリ検索の 1 つとして /lib/ を持つデバイス OS によって提供される環境があるためだと言えます。パス (rpath-link は、検索するディレクトリの最初のセットのみを指定します)。これは正しいです?