2013-02-24 111 views
1

我是相当新的复杂的配置,&我想设置的ffmpeg在Amazon EC2的Linux实例,使用这里的指令......安装的ffmpeg - CPP,GCC及的libstdC++的依赖关系

http://wiki.razuna.com/display/ecp/FFMpeg+Installation+on+CentOS+and+RedHat

...但是尝试以下线的时候我已经打了一堵墙...

yum install glibc gcc gcc-c++ autoconf automake libtool 

这里是我得到的错误...

Package matching glibc-2.5-107.x86_64 already installed. Checking for update. 
Package matching autoconf-2.59-12.noarch already installed. Checking for update. 
Package matching automake-1.9.6-2.3.el5.noarch already installed. Checking for update. 
Resolving Dependencies 
--> Running transaction check 
---> Package gcc.x86_64 0:4.1.2-54.el5 will be installed 
--> Processing Dependency: cpp = 4.1.2-54.el5 for package: gcc-4.1.2-54.el5.x86_64 
Package cpp is obsoleted by cpp44, but obsoleting package does not provide for requirements 
---> Package gcc-c++.x86_64 0:4.1.2-54.el5 will be installed 
--> Processing Dependency: libstdc++ = 4.1.2-54.el5 for package: gcc-c++-4.1.2-54.el5.x86_64 
--> Processing Dependency: libstdc++-devel = 4.1.2-54.el5 for package: gcc-c++-4.1.2-54.el5.x86_64 
---> Package libtool.x86_64 0:1.5.22-7.el5_4 will be installed 
--> Running transaction check 
---> Package gcc.x86_64 0:4.1.2-54.el5 will be installed 
--> Processing Dependency: cpp = 4.1.2-54.el5 for package: gcc-4.1.2-54.el5.x86_64 
Package cpp is obsoleted by cpp44, but obsoleting package does not provide for requirements 
---> Package gcc-c++.x86_64 0:4.1.2-54.el5 will be installed 
--> Processing Dependency: libstdc++ = 4.1.2-54.el5 for package: gcc-c++-4.1.2-54.el5.x86_64 
---> Package libstdc++-devel.x86_64 0:4.1.2-54.el5 will be installed 
--> Processing Dependency: libstdc++ = 4.1.2-54.el5 for package: libstdc++-devel-4.1.2-54.el5.x86_64 
--> Processing Dependency: /usr/lib64/libstdc++.so.6 for package: libstdc++-devel-4.1.2-54.el5.x86_64 
--> Processing Dependency: /usr/lib64/libstdc++.so.6 for package: libstdc++-devel-4.1.2-54.el5.x86_64 
--> Processing Conflict: gcc-4.6.2-1.8.amzn1.noarch conflicts libtool < 2.2.10-4.6.2 
--> Processing Conflict: gcc-c++-4.6.2-1.8.amzn1.noarch conflicts libtool < 2.2.10-4.6.2 
--> Finished Dependency Resolution 
Error: Package: gcc-4.1.2-54.el5.x86_64 (centos) 
      Requires: cpp = 4.1.2-54.el5 
      Installed: cpp46-4.6.2-2.65.amzn1.x86_64 (@amzn-main) 
       cpp = 4.6.2-2.65.amzn1 
      Available: cpp-4.1.2-54.el5.x86_64 (centos) 
       cpp = 4.1.2-54.el5 
       cpp = 4.1.1-52.el5 
      Available: cpp44-4.4.6-4.77.amzn1.x86_64 (amzn-main) 
       cpp = 4.4.6-4.77.amzn1 
      Available: cpp47-4.7.0-5.68.amzn1.x86_64 (amzn-main) 
       cpp = 4.7.0-5.68.amzn1 
      Available: cpp47-4.7.2-2.69.amzn1.x86_64 (amzn-updates) 
       cpp = 4.7.2-2.69.amzn1 
Error: Package: libstdc++-devel-4.1.2-54.el5.x86_64 (centos) 
      Requires: /usr/lib64/libstdc++.so.6 
      Available: libstdc++-4.1.2-54.el5.x86_64 (centos) 
       Not found 
Error: gcc-c++ conflicts with libtool 
Error: gcc conflicts with libtool 
Error: Package: gcc-c++-4.1.2-54.el5.x86_64 (centos) 
      Requires: libstdc++ = 4.1.2-54.el5 
      Installed: libstdc++46-4.6.2-2.65.amzn1.x86_64 (@amzn-main) 
       libstdc++ = 4.6.2-2.65.amzn1 
      Installed: libstdc++47-4.7.2-2.69.amzn1.x86_64 (@amzn-updates) 
       libstdc++ = 4.7.2-2.69.amzn1 
      Available: libstdc++-4.1.2-54.el5.i386 (centos) 
       libstdc++ = 4.1.2-54.el5 
       libstdc++ = 4.1.1-52.el5 
      Available: libstdc++44-4.4.6-4.77.amzn1.i686 (amzn-main) 
       libstdc++ = 4.4.6-4.77.amzn1 
      Available: libstdc++47-4.7.0-5.68.amzn1.i686 (amzn-main) 
       libstdc++ = 4.7.0-5.68.amzn1 
Error: Package: libstdc++-devel-4.1.2-54.el5.x86_64 (centos) 
      Requires: libstdc++ = 4.1.2-54.el5 
      Installed: libstdc++46-4.6.2-2.65.amzn1.x86_64 (@amzn-main) 
       libstdc++ = 4.6.2-2.65.amzn1 
      Installed: libstdc++47-4.7.2-2.69.amzn1.x86_64 (@amzn-updates) 
       libstdc++ = 4.7.2-2.69.amzn1 
      Available: libstdc++-4.1.2-54.el5.i386 (centos) 
       libstdc++ = 4.1.2-54.el5 
       libstdc++ = 4.1.1-52.el5 
      Available: libstdc++44-4.4.6-4.77.amzn1.i686 (amzn-main) 
       libstdc++ = 4.4.6-4.77.amzn1 
      Available: libstdc++47-4.7.0-5.68.amzn1.i686 (amzn-main) 
       libstdc++ = 4.7.0-5.68.amzn1 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 
+0

运行命令“的ffmpeg”你如何解决你的问题的最新消息? thx – Mifeng 2013-09-13 13:21:17

+0

对不起。不记得了。那是很久以前的事了。 – TobyG 2013-10-04 09:38:20

回答

8

以下是如何在Linux上使用静态构建来安装FFMPEG。

SSH到您的实例并成为root

sudo su - 

转到在/ usr/local/bin目录目录

cd /usr/local/bin 

里面的/ usr/local/bin目录目录中,创建一个“的ffmpeg “目录

mkdir ffmpeg 

进入到新目录

cd ffmpeg 

现在,打开一个浏览器并转到FFMPEG静态编译列表http://ffmpeg.gusari.org/static/64bit/并选择最新版本。在撰写本文时,它是ffmpeg.static.64bit.2014-02-16.tar.gz。

虽然在/ usr/local/bin目录/ ffmpeg的目录中,键入以下命令下载静态编译您选择

wget http://ffmpeg.gusari.org/static/64bit/ffmpeg.static.64bit.2014-02-16.tar.gz 

现在,解压缩它...

tar -xzf ffmpeg.static.64bit.2014-02-16.tar.gz 

运行它并检查最新版本是什么

./ffmpeg -version 

输出应该看起来像这样

ffmpeg version N-60675-g8fe1076 
built on Feb 16 2014 05:45:47 with gcc 4.6 (Debian 4.6.3-1) 
configuration: --prefix=/root/ffmpeg-static/64bit --extra-cflags='-I/root/ffmpeg- 
static/64bit/include -static' --extra-ldflags='-L/root/ffmpeg-static/64bit/lib -static' -- 
extra-libs='-lxml2 -lexpat -lfreetype' --enable-static --disable-shared --disable-ffserver -- 
disable-doc --enable-bzlib --enable-zlib --enable-postproc --enable-runtime-cpudetect -- 
enable-libx264 --enable-gpl --enable-libtheora --enable-libvorbis --enable-libmp3lame -- 
enable-gray --enable-libass --enable-libfreetype --enable-libopenjpeg --enable-libspeex -- 
enable-libvo-aacenc --enable-libvo-amrwbenc --enable-version3 --enable-libvpx 
libavutil 52. 64.100/52. 64.100 
libavcodec 55. 52.102/55. 52.102 
libavformat 55. 32.101/55. 32.101 
libavdevice 55. 9.101/55. 9.101 
libavfilter 4. 1.102/4. 1.102 
libswscale 2. 5.101/2. 5.101 
libswresample 0. 17.104/0. 17.104 
libpostproc 52. 3.100/52. 3.100 

如果您希望能够从任何目录下执行FFmpeg中,只需创建一个符号链接到/ usr/bin中是这样的:

ln -s /usr/local/bin/ffmpeg/ffmpeg /usr/bin/ffmpeg 

第一部分(在/ usr/local/bin目录/ ffmpeg/ffmpeg)是我解压缩后的文件所在的文件。第二部分(在/ usr/bin中/ ffmpeg的)是我们想要的符号链接去

现在,你应该能够从任何地方

+0

感谢这个信息。很有用。 – TobyG 2014-02-19 08:42:48

+0

谢谢!非常有帮助。 – jonchoi 2017-04-07 22:42:43