私の質問は、ffmpegを開始する際の私の問題に由来しています。 ffmpegをインストールしましたが、インストール済みと表示されています。
whereis ffmpeg
ffmpeg: /usr/bin/ffmpeg /usr/bin/X11/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz
後で、一部のプログラムはインストール自体に付属していないライブラリに依存していることがわかったので、欠落しているものをlddコマンドで確認しました。
# ldd /usr/bin/ffmpeg
linux-vdso.so.1 => (0x00007fff71fe9000)
libavfilter.so.0 => not found
libpostproc.so.51 => not found
libswscale.so.0 => not found
libavdevice.so.52 => not found
libavformat.so.52 => not found
libavcodec.so.52 => not found
libavutil.so.49 => not found
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f5f20bdf000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f5f209c0000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5f205fb000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5f20f09000)
結局のところ、私のffmpegは7つのライブラリーから切り離されています。最初に、これらのライブラリのそれぞれをインストールする必要があると思いましたが、想像以上に、一部またはすべてがインストールされている可能性がありますが、それらの場所はffmpegには不明です。 /etc/ld.so.confと/etc/ld.so.cacheにライブラリへのパスが含まれていることを読みましたが、混乱していました。
/etc/ld.so.conf
cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
しかし、非常に長い/etc/ld.so.cache
。
さらに調査する方法がわからなくなったところです。ffmpegの場所が不明な場合でも、特定のライブラリが実際にインストールされているかどうかを確認する方法は、次のステップとして役立ちます。
---------Output---of----apt-cache-policy-----request---------
apt-cache policy
Package files:
100 /var/lib/dpkg/status
release a=now
500 http://archive.canonical.com/ubuntu/ trusty/partner Translation-en
500 http://archive.canonical.com/ubuntu/ trusty/partner i386 Packages
release v=14.04,o=Canonical,a=trusty,n=trusty,l=Partner archive,c=partner
Origin archive.canonical.com
500 http://archive.canonical.com/ubuntu/ trusty/partner AMD64 Packages
release v=14.04,o=Canonical,a=trusty,n=trusty,l=Partner archive,c=partner
Origin archive.canonical.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/universe Translation-en
500 http://security.ubuntu.com/ubuntu/ trusty-security/restricted Translation-en
500 http://security.ubuntu.com/ubuntu/ trusty-security/multiverse Translation-en
500 http://security.ubuntu.com/ubuntu/ trusty-security/main Translation-en
500 http://security.ubuntu.com/ubuntu/ trusty-security/multiverse i386 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=multiverse
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/universe i386 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=universe
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/restricted i386 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=restricted
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/main i386 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=main
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/multiverse AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=multiverse
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/universe AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=universe
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/restricted AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=restricted
Origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu/ trusty-security/main AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-security,n=trusty,l=Ubuntu,c=main
Origin security.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/restricted Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/multiverse Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/multiverse i386 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=multiverse
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe i386 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=universe
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/restricted i386 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=restricted
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=main
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/multiverse AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=multiverse
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/universe AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=universe
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/restricted AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=restricted
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty-updates,n=trusty,l=Ubuntu,c=main
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/universe Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty/restricted Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty/main Translation-en
500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse i386 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=multiverse
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/universe i386 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=universe
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/restricted i386 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=restricted
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/main i386 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=main
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=multiverse
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/universe AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=universe
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/restricted AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=restricted
Origin archive.ubuntu.com
500 http://archive.ubuntu.com/ubuntu/ trusty/main AMD64 Packages
release v=14.04,o=Ubuntu,a=trusty,n=trusty,l=Ubuntu,c=main
Origin archive.ubuntu.com
700 http://extra.linuxmint.com/ rebecca/main i386 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=main
Origin extra.linuxmint.com
700 http://extra.linuxmint.com/ rebecca/main AMD64 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=main
Origin extra.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/import i386 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=import
Origin packages.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/upstream i386 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=upstream
Origin packages.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/main i386 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=main
Origin packages.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/import AMD64 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=import
Origin packages.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/upstream AMD64 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=upstream
Origin packages.linuxmint.com
700 http://packages.linuxmint.com/ rebecca/main AMD64 Packages
release v=17.1,o=linuxmint,a=rebecca,n=rebecca,l=linuxmint,c=main
Origin packages.linuxmint.com
Pinned packages:
これらのライブラリーについては、/ usr/libおよび/ usr/lib64を調べてください。 ffmpegの1つが見つからない場合は、それをシンボリックリンクして、他のディレクトリに存在するようにします。
「libm.so.6」の検索を実行して、そのファイルの場所を確認することもできます。 ffmpegが欠落しているディレクトリを同じディレクトリで探している可能性は十分にあります。あなたがそれらを見つけたら、あちらにシンボリックリンクしてください。
それらがサーバーに存在しない場合は、それらを含むパッケージをインストールします。 ffmpegパッケージに含まれているのに表示されない場合は、ffmpegを再インストールしてください。
以下を使用できます。
ldconfig -p | grep libavfilter
出力ライブラリがない場合はインストールされません。これが100%信頼できるかどうかはわかりません。
少なくとも-pのldconfig
のmanページで-p:
現在のキャッシュに保存されているディレクトリと候補ライブラリのリストを出力します。
コマンドfile `which ffmpeg`
を使用して、ffmpeg
が64ビット用にコンパイルされているか32ビット用にコンパイルされているかを判別します。 64ビットの場合は、/usr/lib64
でライブラリを探します。 32ビットの場合は、/usr/lib
でライブラリを探します。 ffmpeg
が静的にリンクされている場合、それは問題ではありません...共有ライブラリは使用されず、file
の出力からもそれがわかります。
/usr/lib
と/usr/lib64
の間でライブラリをシンボリックリンクしないでください。 64ビットプログラムには64ビットライブラリ(/usr/lib64
に含まれる)が必要であり、32ビットプログラムには32ビットライブラリ(/usr/lib32
に含まれる)が必要であるため、これは役に立ちません。
サーバーにライブラリが存在しない場合は、それらを提供するパッケージをインストールします(ffmpegが32ビットの場合は、必ず32ビットパッケージを選択してください)。