rtmpdumpはルートなしでコンパイルできます。 librtmp.so.1 =>が見つかりません。

rtmpdumpはルートなしでコンパイルできます。 librtmp.so.1 =>が見つかりません。

~/.localprefix=~/.localそのため、プログラムが正しくコンパイルされるように、makefileのプレフィックスオプションを編集して正常にコンパイルし、librtmpバイナリで実行するとldd次のような出力が得られました。

ldd rtmpdump-ksv/rtmpdump
linux-vdso.so.1 =>  (0x00007ffedb4d2000)
librtmp.so.1 => not found
libssl.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007fc7489a5000)
libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007fc7485ac000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fc748395000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc748113000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc747d87000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc747b83000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc748c15000)

私はibrtmp.so.1コピーしようとし、librtmp.soすべてのディレクトリに~/.local

ベストアンサー1

デフォルトでは、プログラムは実行可能ファイルと同じディレクトリにあるライブラリを検索しません。 Unixの従来のディレクトリ構成では、というディレクトリに実行可能ファイルがあり、…/binというディレクトリにライブラリがあります…/lib

ソフトウェアをコンパイルするときにこれを設定すると、最終的に実行可能ファイルとライブラリがインストールprefix=~/.localされます。これらのライブラリについてシステムに通知するには、次の行を追加するか、環境変数と設定を準備します。~/.local/bin~/.local/lib~/.profilePATHLD_LIBRARY_PATH

PATH=$PATH:~/.local/bin
export LD_LIBRARY_PATH=~/.local/lib

OSXでは、DYLD_LIBRARY_PATH代わりにLD_LIBRARY_PATH

おすすめ記事