Changes between Version 62 and Version 63 of CompilationGuide/Centos
- Timestamp:
- Oct 26, 2017, 10:31:03 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CompilationGuide/Centos
v62 v63 3 3 [[PageOutline(2, Contents)]] 4 4 5 This guide is based on a minimal installation of the latest CentOS release, and will provide a local, non-system installation of FFmpeg with support for several external encoding libraries. These instructions should also work for recent Red Hat Enterprise Linux (RHEL) and Fedora. This is a non-invasive guide and undoing all steps is simple and is shown at the end of this page.5 This guide is based on a minimal installation of the latest CentOS release, and will provide a local, non-system installation of FFmpeg with support for several common external encoding libraries. These instructions should also work for recent Red Hat Enterprise Linux (RHEL) and Fedora. This is a non-invasive guide and undoing all steps is simple and is shown at the end of this page. 6 6 7 7 ---- … … 10 10 11 11 {{{ 12 #!div style="border: 1p t dotted; margin: 1em; background-color: #fffff9;"12 #!div style="border: 1px solid #e5e5c7; margin: 1em; background-color: #ffd;" 13 13 '''Note:''' The `#` indicates that the command should be executed as superuser or root and is only required in this guide for the `yum` command. 14 14 }}} … … 16 16 Get the dependencies. These are required for compiling, but you can remove them when you are done if you prefer (except `make`; it should be installed by default and many things depend on it). 17 17 {{{ 18 # yum-config-manager --add-repo http://www.nasm.us/nasm.repo 19 # yum install autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel 18 # yum install autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel 20 19 }}} 21 20 … … 30 29 31 30 {{{ 32 #!div style="border: 1pt dotted; margin: 1em; background-color: #fffff9;" 33 '''Note:''' If you do not require certain encoders you may skip the relevant section and then remove the appropriate `./configure` option in FFmpeg. For example, if libvorbis is not needed, then skip that section and then remove `--enable-libvorbis` from the [#FFmpeg Install FFmpeg] section. 31 #!div style="border: 1px solid #c7e5c7; margin: 1em; background-color: #ddffdd;" 32 '''Tip:''' If you do not require certain encoders you may skip the relevant section and then remove the appropriate `./configure` option in FFmpeg. For example, if libvorbis is not needed, then skip that section and then remove `--enable-libvorbis` from the [#FFmpeg Install FFmpeg] section. 33 }}} 34 35 === NASM === 36 37 An assembler used by some libraries. Highly recommended or your resulting build may be very slow. 38 39 {{{ 40 cd ~/ffmpeg_sources 41 curl -O -L http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.bz2 42 tar xjvf nasm-2.13.01.tar.bz2 43 cd nasm-2.13.01 44 ./autogen.sh 45 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" 46 make 47 make install 34 48 }}} 35 49 36 50 === Yasm === 37 51 38 An assembler for x86 optimizationsused by some libraries. Highly recommended or your resulting build may be very slow.39 40 {{{ 41 cd ~/ffmpeg_sources 42 curl -O http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz52 An assembler used by some libraries. Highly recommended or your resulting build may be very slow. 53 54 {{{ 55 cd ~/ffmpeg_sources 56 curl -O -L http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz 43 57 tar xzvf yasm-1.3.0.tar.gz 44 58 cd yasm-1.3.0 … … 61 75 make 62 76 make install 63 echo 77 }}} 78 79 {{{ 80 #!div style="border: 1px solid #e5c7c7; margin: 1em; background-color: #fdd;" 81 '''Warning:''' If you get `Found no assembler. Minimum version is nasm-2.13` or similar after running `./configure` then the outdated nasm package from the repo is installed. Run `yum remove nasm && hash -r` and x264 will then use your newly compiled nasm instead. 64 82 }}} 65 83 … … 77 95 make 78 96 make install 79 echo80 97 }}} 81 98 … … 94 111 make 95 112 make install 96 echo97 113 }}} 98 114 … … 105 121 {{{ 106 122 cd ~/ffmpeg_sources 107 curl - L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz108 tar xzvf lame-3. 99.5.tar.gz109 cd lame-3. 99.5123 curl -O -L http://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz 124 tar xzvf lame-3.100.tar.gz 125 cd lame-3.100 110 126 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm 111 127 make 112 128 make install 113 echo114 129 }}} 115 130 … … 122 137 {{{ 123 138 cd ~/ffmpeg_sources 124 curl -O https://archive.mozilla.org/pub/opus/opus-1.1.5.tar.gz125 tar xzvf opus-1. 1.5.tar.gz126 cd opus-1. 1.5139 curl -O -L https://archive.mozilla.org/pub/opus/opus-1.2.tar.gz 140 tar xzvf opus-1.2.tar.gz 141 cd opus-1.2 127 142 ./configure --prefix="$HOME/ffmpeg_build" --disable-shared 128 143 make … … 136 151 {{{ 137 152 cd ~/ffmpeg_sources 138 curl -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz153 curl -O -L http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz 139 154 tar xzvf libogg-1.3.2.tar.gz 140 155 cd libogg-1.3.2 … … 142 157 make 143 158 make install 144 echo145 159 }}} 146 160 … … 153 167 {{{ 154 168 cd ~/ffmpeg_sources 155 curl -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz156 tar xzvf libvorbis-1.3. 4.tar.gz157 cd libvorbis-1.3. 4169 curl -O -L http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz 170 tar xzvf libvorbis-1.3.5.tar.gz 171 cd libvorbis-1.3.5 158 172 ./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared 159 173 make 160 174 make install 161 echo162 175 }}} 163 176 … … 173 186 cd libvpx 174 187 ./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm 175 PATH="$HOME/bin:$PATH" make 176 make install 177 echo 188 make 189 make install 178 190 }}} 179 191 … … 182 194 {{{ 183 195 cd ~/ffmpeg_sources 184 curl -O http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2196 curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 185 197 tar xjvf ffmpeg-snapshot.tar.bz2 186 198 cd ffmpeg … … 210 222 211 223 {{{ 212 #!div style="border: 1p t dotted; margin: 1em; background-color: #ddffdd;"224 #!div style="border: 1px solid #c7e5c7; margin: 1em; background-color: #ddffdd;" 213 225 '''Tip:''' Keep the `ffmpeg_sources` directory and all contents if you intend to [#Updating update] as shown below. Otherwise you can delete this directory. 214 226 }}} … … 222 234 {{{ 223 235 rm -rf ~/ffmpeg_build ~/bin/{ffmpeg,ffprobe,ffserver,lame,x264,x265} 224 # yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasmpkgconfig zlib-devel236 # yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel 225 237 }}} 226 238 … … 269 281 270 282 {{{ 271 rm -rf ~/ffmpeg_build ~/ffmpeg_sources ~/bin/{ffmpeg,ffprobe,ffserver,lame, vsyasm,x264,yasm,ytasm}272 # yum erase autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool mercurial nasm pkgconfigzlib-devel283 rm -rf ~/ffmpeg_build ~/ffmpeg_sources ~/bin/{ffmpeg,ffprobe,ffserver,lame,nasm,vsyasm,x264,yasm,ytasm} 284 # yum erase autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool mercurial zlib-devel 273 285 hash -r 274 286 }}} … … 277 289 278 290 == If You Need Help == 279 Feel free to ask your questions at the #ffmpeg IRC channel or the [http ://ffmpeg.org/contact.html ffmpeg-user] mailing list.291 Feel free to ask your questions at the #ffmpeg IRC channel or the [https://ffmpeg.org/contact.html ffmpeg-user] mailing list. 280 292 281 293 ----
