この質問はそれほど新しいものではないことは知っていますが、自分で問題を解決できなかったようです。
ldd
次の出力を生成します
[email protected]:~$ ldd /home/u123/Programme/TestPr/Debug/TestPr
linux-vdso.so.1 => (0x00007ffcb6d99000)
libcsfml-window.so.2.2 => not found
libcsfml-graphics.so.2.2 => not found
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fcebb2ed000)
/lib64/ld-linux-x86-64.so.2 (0x0000560c48984000)
ld
を伝える正しい方法はどれですか 正しいパス?
承認された回答:
ライブラリが標準パス上にない場合は、ライブラリをパスに追加するか、非標準パスをLD_LIBRARY_PATHに追加する必要があります
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<Your_non-Standard_path>
上記のいずれかを実行したら、以下のコマンドを実行して、ダイナミックリンカーのランタイムバインディングを更新する必要があります。
sudo ldconfig
更新:
上記のexport
を作成することで、変更を永続的にすることができます。 スタートアップファイルの1つ(例:〜/ .bashrc)に行を入力しますまたは 基になるライブラリが他のライブラリと競合していない場合は、標準ライブラリパス(例:/ lib、/ usr / lib)の1つに配置します