HandBrake-docs/source/docs/en/1.0.0/developer/install-dependencies-centos.markdown
2024-11-03 13:14:38 +00:00

5.1 KiB

Type, State, Title, Project, Project_URL, Project_Version, Language, Language_Code, Authors, Copyright, License, License_Abbr, License_URL
Type State Title Project Project_URL Project_Version Language Language_Code Authors Copyright License License_Abbr License_URL
article
obsolete
Installing dependencies on CentOS HandBrake https://handbrake.fr/ 1.0.0 English en
Bradley Sepos <bradley@bradleysepos.com> (BradleyS)
2024 HandBrake Team Creative Commons Attribution-ShareAlike 4.0 International CC BY-SA 4.0 https://handbrake.fr/docs/license.html

Installing dependencies on CentOS

Instructions are available for installing dependencies on CentOS 6 and 7.

CentOS 7

The following instructions are for CentOS 7 x86_64 (HandBrake [CLI](abbr:Command Line Interface) only).

Dependencies:

  • Development Tools
  • Additional Development
  • fribidi-devel
  • jansson-devel
  • libogg-devel
  • libsamplerate-devel
  • libtheora-devel
  • libvorbis-devel
  • opus-devel

Additional dependencies not available in the base repository:

  • lame-devel [RPM Fusion]
  • libass-devel [EPEL]
  • x264-devel [RPM Fusion]
  • yasm [EPEL]

Install dependencies.

sudo yum update
sudo yum groupinstall "Development Tools" "Additional Development"
sudo yum install fribidi-devel jansson-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel opus-devel

Install the EPEL repository and related additional dependencies.

sudo yum install epel-release
sudo yum install libass-devel yasm

The lame-devel and x264-devel packages are now provided by the RPM Fusion repository. If you previously installed the ZMREPO repository for these packages, remove them and the repository before continuing.

# Only necessary if previously installed ZMREPO
sudo yum repo-pkgs zmrepo remove
sudo yum remove zmrepo

Install the RPM Fusion Free repository and related additional dependencies.

sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
sudo yum install lame-devel x264-devel

CentOS is now prepared to build the HandBrake [CLI](abbr:Command Line Interface). See Building HandBrake for Linux for further instructions.

CentOS 6

The following instructions are for CentOS 6 x86_64 (HandBrake [CLI](abbr:Command Line Interface) only).

Dependencies:

  • Development tools
  • Additional Development
  • cmake
  • libicu-devel
  • libogg-devel
  • libsamplerate-devel
  • libtheora-devel
  • libvorbis-devel

Additional dependencies not available in the base repository:

  • fribidi-devel [EPEL]
  • harfbuzz-devel [spec file]
  • jansson-devel [EPEL]
  • lame-devel [RPM Fusion]
  • libass-devel [EPEL]
  • opus-devel [EPEL]
  • python27 [SCL]
  • x264-devel [RPM Fusion]
  • yasm [EPEL]

Install dependencies.

sudo yum groupinstall "Development tools" "Additional Development"
sudo yum install cmake libicu-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel

Install the Software Collections (SCL) repository and Python 2.7.x1.

sudo yum install centos-release-scl
sudo yum install python27

Install the EPEL repository and related additional dependencies.

sudo yum install epel-release
sudo yum install fribidi-devel jansson-devel libass-devel opus-devel yasm

Install the RPM Fusion Free repository and related additional dependencies.

sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm
sudo yum install lame-devel x264-devel

Download the HarfBuzz spec file from the CentOS 7 rpms/harfbuzz git repository and remove the graphite2-devel dependency.

sudo mkdir -p /root/rpmbuild/SPECS
sudo curl -o /root/rpmbuild/SPECS/harfbuzz.spec 'https://git.centos.org/raw/rpms/harfbuzz.git/f5bd1f4920ed0fc56cd21547294f7c34deeb4e4f/SPECS!harfbuzz.spec'
sudo sed -i'' -e '/BuildRequires:[ ]*graphite2-devel/d' -e '/%configure/s/ --with-graphite2//' /root/rpmbuild/SPECS/harfbuzz.spec

Download, build, and install HarfBuzz (provides the harfbuzz-devel package).

sudo mkdir -p /root/rpmbuild/SOURCES
sudo curl -o /root/rpmbuild/SOURCES/harfbuzz-0.9.36.tar.bz2 'https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.36.tar.bz2'
sudo rpmbuild -ba /root/rpmbuild/SPECS/harfbuzz.spec
sudo find /root/rpmbuild/RPMS/x86_64 -name harfbuzz-*.rpm -exec sudo yum localinstall {} \;

Launch a new shell with Python 2.7 enabled.

scl enable python27 bash

CentOS is now prepared to build the HandBrake [CLI](abbr:Command Line Interface). See Building HandBrake for Linux for further instructions.


  1. Installing Python from CentOS SCL does not impact the default system Python; newer versions are installed alongside and in addition to the system version. ↩︎