Changes between Version 62 and Version 63 of CompilationGuide/Centos


Ignore:
Timestamp:
Oct 27, 2017, 1:31:03 AM (3 weeks ago)
Author:
llogan
Comment:

don't mess with repos. don't remove pkgconfig as it removes system stuff. add -L to curl as xiph links are now redirects. update notation colors. remove sacrifical echos: can't idiotproof everthing.

Legend:

Unmodified
Added
Removed
Modified
  • CompilationGuide/Centos

    v62 v63  
    33[[PageOutline(2, Contents)]] 
    44 
    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. 
     5This 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. 
    66 
    77---- 
     
    1010 
    1111{{{ 
    12 #!div style="border: 1pt dotted; margin: 1em; background-color: #fffff9;" 
     12#!div style="border: 1px solid #e5e5c7; margin: 1em; background-color: #ffd;" 
    1313'''Note:''' The `#` indicates that the command should be executed as superuser or root and is only required in this guide for the `yum` command. 
    1414}}} 
     
    1616Get 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). 
    1717{{{ 
    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 
    2019}}} 
    2120 
     
    3029 
    3130{{{ 
    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 
     37An assembler used by some libraries. Highly recommended or your resulting build may be very slow. 
     38 
     39{{{ 
     40cd ~/ffmpeg_sources 
     41curl -O -L http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.bz2 
     42tar xjvf nasm-2.13.01.tar.bz2 
     43cd nasm-2.13.01 
     44./autogen.sh 
     45./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" 
     46make 
     47make install 
    3448}}} 
    3549 
    3650=== Yasm === 
    3751 
    38 An assembler for x86 optimizations used 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.gz 
     52An assembler used by some libraries. Highly recommended or your resulting build may be very slow. 
     53 
     54{{{ 
     55cd ~/ffmpeg_sources 
     56curl -O -L http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz 
    4357tar xzvf yasm-1.3.0.tar.gz 
    4458cd yasm-1.3.0 
     
    6175make 
    6276make 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. 
    6482}}} 
    6583 
     
    7795make 
    7896make install 
    79 echo 
    8097}}} 
    8198 
     
    94111make 
    95112make install 
    96 echo 
    97113}}} 
    98114 
     
    105121{{{ 
    106122cd ~/ffmpeg_sources 
    107 curl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz 
    108 tar xzvf lame-3.99.5.tar.gz 
    109 cd lame-3.99.5 
     123curl -O -L http://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz 
     124tar xzvf lame-3.100.tar.gz 
     125cd lame-3.100 
    110126./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm 
    111127make 
    112128make install 
    113 echo 
    114129}}} 
    115130 
     
    122137{{{ 
    123138cd ~/ffmpeg_sources 
    124 curl -O https://archive.mozilla.org/pub/opus/opus-1.1.5.tar.gz 
    125 tar xzvf opus-1.1.5.tar.gz 
    126 cd opus-1.1.5 
     139curl -O -L https://archive.mozilla.org/pub/opus/opus-1.2.tar.gz 
     140tar xzvf opus-1.2.tar.gz 
     141cd opus-1.2 
    127142./configure --prefix="$HOME/ffmpeg_build" --disable-shared 
    128143make 
     
    136151{{{ 
    137152cd ~/ffmpeg_sources 
    138 curl -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz 
     153curl -O -L http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz 
    139154tar xzvf libogg-1.3.2.tar.gz 
    140155cd libogg-1.3.2 
     
    142157make 
    143158make install 
    144 echo 
    145159}}} 
    146160 
     
    153167{{{ 
    154168cd ~/ffmpeg_sources 
    155 curl -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz 
    156 tar xzvf libvorbis-1.3.4.tar.gz 
    157 cd libvorbis-1.3.4 
     169curl -O -L http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz 
     170tar xzvf libvorbis-1.3.5.tar.gz 
     171cd libvorbis-1.3.5 
    158172./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared 
    159173make 
    160174make install 
    161 echo 
    162175}}} 
    163176 
     
    173186cd libvpx 
    174187./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 
     188make 
     189make install 
    178190}}} 
    179191 
     
    182194{{{ 
    183195cd ~/ffmpeg_sources 
    184 curl -O http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 
     196curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 
    185197tar xjvf ffmpeg-snapshot.tar.bz2 
    186198cd ffmpeg 
     
    210222 
    211223{{{ 
    212 #!div style="border: 1pt dotted; margin: 1em; background-color: #ddffdd;" 
     224#!div style="border: 1px solid #c7e5c7; margin: 1em; background-color: #ddffdd;" 
    213225'''Tip:''' Keep the `ffmpeg_sources` directory and all contents if you intend to [#Updating update] as shown below. Otherwise you can delete this directory. 
    214226}}} 
     
    222234{{{ 
    223235rm -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 nasm pkgconfig zlib-devel 
     236# yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel 
    225237}}} 
    226238 
     
    269281 
    270282{{{ 
    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 pkgconfig zlib-devel 
     283rm -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 
    273285hash -r 
    274286}}} 
     
    277289 
    278290== 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. 
     291Feel free to ask your questions at the #ffmpeg IRC channel or the [https://ffmpeg.org/contact.html ffmpeg-user] mailing list. 
    280292 
    281293----