docs: Update most of the nightly build guides for libjpeg-turbo.

Drop CentOS 7.
This commit is contained in:
Bradley Sepos 2020-06-16 15:04:19 -04:00
parent bcc517ae54
commit b8c809c01d
No known key found for this signature in database
GPG Key ID: DEADE2F57D42D9C7
5 changed files with 18 additions and 158 deletions

View File

@ -36,6 +36,7 @@ Dependencies:
- lame
- libass
- libbluray
- libjpeg-turbo
- libogg
- libsamplerate
- libtheora
@ -70,7 +71,7 @@ Graphical interface dependencies:
Install dependencies.
sudo pacman -S base-devel cmake flac fontconfig freetype2 fribidi git harfbuzz jansson lame libass libbluray libogg libsamplerate libtheora libvorbis libvpx libxml2 meson nasm ninja numactl opus python2 speex x264 xz
sudo pacman -S base-devel cmake flac fontconfig freetype2 fribidi git harfbuzz jansson lame libass libbluray libjpeg-turbo libogg libsamplerate libtheora libvorbis libvpx libxml2 meson nasm ninja numactl opus python2 speex x264 xz
To build with Intel Quick Sync Video support, install the QSV dependencies.

View File

@ -18,7 +18,7 @@ Installing dependencies on CentOS
## CentOS 8
The following instructions are for [CentOS](https://centos.org) 8.1.
The following instructions are for [CentOS](https://centos.org) 8.
Basic requirements to run commands:
@ -51,6 +51,7 @@ Additional dependencies not available in the base repository:
- ninja-build [PowerTools]
- opus-devel [PowerTools]
- speex-devel [PowerTools]
- turbojpeg-devel [PowerTools]
- x264-devel [RPM Fusion]
Intel Quick Sync Video dependencies (optional):
@ -81,7 +82,7 @@ Install dependencies.
Enable the CentOS PowerTools repository and install related additional dependencies.
sudo dnf config-manager --set-enabled PowerTools
sudo dnf install lame-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel libvpx-devel meson nasm ninja-build opus-devel speex-devel
sudo dnf install lame-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel libvpx-devel meson nasm ninja-build opus-devel speex-devel turbojpeg-devel
Install the [EPEL](https://fedoraproject.org/wiki/EPEL) repository and related additional dependencies.
@ -102,148 +103,3 @@ To build the GTK [GUI](abbr:Graphical User Interface), install the graphical int
sudo dnf install dbus-glib-devel gstreamer1-devel gstreamer1-libav gstreamer1-plugins-base-devel intltool libgudev1-devel libnotify-devel webkit2gtk3-devel
CentOS is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
## CentOS 7
The following instructions are for [CentOS](https://centos.org) 7.7.
Basic requirements to run commands:
- curl
- sudo (for normal user accounts)
Dependencies:
- Development Tools
- bzip2-devel
- cmake
- fribidi-devel
- git
- jansson-devel
- libogg-devel
- libsamplerate-devel
- libtheora-devel
- libvorbis-devel
- libxml2-devel
- numactl-devel
- python3
- speex-devel
- xz-devel
Additional dependencies not available in the base repository:
- devtoolset-7 [SCL] (optional/recommended for HandBrake [CLI](abbr:Command Line Interface))
- lame-devel [EPEL]
- libass-devel [EPEL]
- libvpx
- meson [EPEL]
- nasm [NASM]
- ninja-build [EPEL]
- opus-devel [EPEL EL6]
- x264-devel [RPM Fusion]
Intel Quick Sync Video dependencies (optional):
- libva-devel
- libdrm-devel
Graphical interface dependencies:
- dbus-glib-devel
- gstreamer1-devel
- gstreamer1-plugins-base-devel
- intltool
- libgudev1-devel
- libnotify-devel
- webkitgtk4-devel
Additional graphical interface dependencies not available in the base repository:
- devtoolset-7 [SCL]
- gstreamer1-libav [RPM Fusion]
Install dependencies.
sudo yum update
sudo yum groupinstall "Development Tools"
sudo yum install bzip2-devel cmake fribidi-devel git jansson-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel libxml2-devel numactl-devel python3 speex-devel xz-devel
The `lame-devel` and `x264-devel` packages are now provided by the EPEL and RPM Fusion repositories, respectively. If you previously installed the [ZMREPO](https://zmrepo.zoneminder.com) 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 [EPEL](https://fedoraproject.org/wiki/EPEL) repository and related additional dependencies.
sudo yum install epel-release
sudo yum install lame-devel libass-devel meson ninja-build
The `opus-devel` package provided by CentOS 7 is too old. Install a newer version provided by EPEL for CentOS 6[^opus-el6].
sudo yum localinstall $(curl -L -s 'https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/o/' | grep -Eo 'opus-[^">]+\.x86_64\.rpm' | sort -u | awk '{ print "https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/o/"$0 }')
The `nasm` package provided by CentOS 7 is too old. Install a newer version provided by the NASM project[^nasm-repo].
sudo curl -L 'https://nasm.us/nasm.repo' -o /etc/yum.repos.d/nasm.repo
sudo yum install nasm
The `libvpx-devel` package provided by CentOS 7 is too old. Build and install a newer version from source[^libvpx-source].
# remove old package if installed
sudo yum remove libvpx-devel
# libvpx
curl -L https://github.com/webmproject/libvpx/archive/v1.8.1.tar.gz -o libvpx-1.8.1.tar.gz
tar -xf libvpx-1.8.1.tar.gz
cd libvpx-1.8.1
./configure --enable-shared --enable-static --as=nasm --enable-pic --enable-runtime-cpu-detect --enable-vp8 --enable-vp9
make -j$(nproc)
sudo make install
cd ..
# make shared libraries findable
export CFLAGS="${CFLAGS:-} -I/usr/local/include"
export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"
echo 'export CFLAGS="${CFLAGS:-} -I/usr/local/include"' >> "${HOME}/.bashrc"
echo 'export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"' >> "${HOME}/.bashrc"
if ! grep '\/usr\/local\/lib' /etc/ld.so.conf >/dev/null 2>&1; then
echo '/usr/local/lib' | sudo tee --append /etc/ld.so.conf
sudo ldconfig
fi
Install the [RPM Fusion](http://rpmfusion.org) 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 x264-devel
To build with Intel Quick Sync Video support, install the QSV dependencies.
sudo yum install libva-devel libdrm-devel
To build the GTK [GUI](abbr:Graphical User Interface), install the graphical interface dependencies.
sudo yum install dbus-glib-devel gstreamer1-devel gstreamer1-libav gstreamer1-plugins-base-devel intltool libgudev1-devel libnotify-devel webkitgtk4-devel
The GNU Compiler Collection and related packages provided by CentOS 7 are old. Install and enable a newer version provided by Software Collections (SCL)[^gcc-scl]. This is recommended for building the HandBrake [CLI](abbr:Command Line Interface) and required for building the GTK [GUI](abbr:Graphical User Interface).
sudo yum install centos-release-scl
sudo yum install devtoolset-7
sudo scl enable devtoolset-7 bash # launches a bash session with the appropriate tools enabled
# make shared libraries findable by root
export CFLAGS="${CFLAGS:-} -I/usr/local/include"
export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"
echo 'export CFLAGS="${CFLAGS:-} -I/usr/local/include"' >> "${HOME}/.bashrc"
echo 'export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"' >> "${HOME}/.bashrc"
CentOS is now prepared to build HandBrake. See [Building HandBrake for Linux](build-linux.html) for further instructions.
[^opus-el6]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
[^nasm-repo]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
[^libvpx-source]: Installing newer packages than those available in the base repository may lead to incompatibility with other software expecting specific package versions.
[^gcc-scl]: SCL packages are isolated from base repository versions of similar packages. You can enable these packages using the `scl` command line tool. When you are finished using these packages, simply log out of the active shell to resume using packages provided by the base repository.

View File

@ -16,7 +16,7 @@ License_URL: https://handbrake.fr/docs/license.html
Installing dependencies on Clear
================================
The following instructions are for [Clear](https://clearlinux.org) 31140 and later.
The following instructions are for [Clear](https://clearlinux.org) 33370 and later.
Basic requirements to run commands:
@ -30,6 +30,7 @@ Dependencies:
- devpkg-fribidi
- devpkg-jansson
- devpkg-libass
- devpkg-libjpeg-turbo
- devpkg-libogg
- devpkg-libsamplerate
- devpkg-libtheora
@ -55,7 +56,7 @@ Graphical interface dependencies:
Install dependencies.
sudo swupd update
sudo swupd bundle-add dev-utils dev-utils-dev devpkg-fribidi devpkg-jansson devpkg-libass devpkg-libogg devpkg-libsamplerate devpkg-libtheora devpkg-libvorbis devpkg-libvpx devpkg-opus devpkg-speex
sudo swupd bundle-add dev-utils dev-utils-dev devpkg-fribidi devpkg-jansson devpkg-libass devpkg-libjpeg-turbo devpkg-libogg devpkg-libsamplerate devpkg-libtheora devpkg-libvorbis devpkg-libvpx devpkg-opus devpkg-speex
Build and install the dependencies not available in the base repository.
@ -69,10 +70,9 @@ Build and install the dependencies not available in the base repository.
cd ..
# x264
curl -LO https://download.videolan.org/pub/videolan/x264/snapshots/last_stable_x264.tar.bz2
mkdir x264-snapshot-stable
tar -xf last_stable_x264.tar.bz2 --directory x264-snapshot-stable --strip-components=1
cd x264-snapshot-stable
curl -LO https://code.videolan.org/videolan/x264/-/archive/master/x264-master.tar.bz2
tar -xf x264-master.tar.bz2
cd x264-master
./configure --enable-shared --enable-static --enable-lto --enable-pic --enable-strip
make -j$(nproc)
sudo make install
@ -80,10 +80,10 @@ Build and install the dependencies not available in the base repository.
# make shared libraries findable
export CFLAGS="${CFLAGS:-} -I/usr/local/include"
export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"
echo 'export CFLAGS="${CFLAGS:-} -I/usr/local/include"' >> "${HOME}/.bashrc"
echo 'export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"' >> "${HOME}/.bashrc"
if ! grep '\/usr\/local\/lib' /etc/ld.so.conf >/dev/null 2>&1; then
export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"
echo 'export LDFLAGS="${LDFLAGS:-} -L/usr/local/lib"' >> "${HOME}/.bashrc"
echo '/usr/local/lib' | sudo tee --append /etc/ld.so.conf
sudo ldconfig
fi

View File

@ -16,7 +16,9 @@ License_URL: https://handbrake.fr/docs/license.html
Installing dependencies on Debian
=================================
The following instructions are for [Debian](https://www.debian.org) 9.12 Stretch through 10.3 Buster.
The following instructions are for [Debian](https://www.debian.org) 9 Stretch through 10 Buster.
*HandBrake requires gettext 0.20.0, which Debian does not yet provide. See [https://tracker.debian.org/pkg/gettext](https://tracker.debian.org/pkg/gettext). As a temporary workaround, you may wish to build and install a newer version of gettext from source. While no obvious issues have been observed, be aware that installing software newer than the packages provided by your distribution may affect other system packages relying on a specific version.*
Basic requirements to run commands:

View File

@ -56,6 +56,7 @@ Dependencies:
- python
- speex-devel
- tar
- turbojpeg-devel
- xz-devel
- zlib-devel
@ -85,7 +86,7 @@ Install dependencies.
sudo dnf update
sudo dnf groupinstall "Development Tools" "C Development Tools and Libraries"
sudo dnf install bzip2-devel cmake fontconfig-devel freetype-devel fribidi-devel gcc-c++ git harfbuzz-devel jansson-devel lame-devel lbzip2 libass-devel libogg-devel libsamplerate-devel libtheora-devel libtool libvorbis-devel libxml2-devel libvpx-devel m4 make meson nasm ninja-build numactl-devel opus-devel patch python speex-devel tar xz-devel zlib-devel
sudo dnf install bzip2-devel cmake fontconfig-devel freetype-devel fribidi-devel gcc-c++ git harfbuzz-devel jansson-devel lame-devel lbzip2 libass-devel libogg-devel libsamplerate-devel libtheora-devel libtool libvorbis-devel libxml2-devel libvpx-devel m4 make meson nasm ninja-build numactl-devel opus-devel patch python speex-devel tar turbojpeg-devel xz-devel zlib-devel
Install the [RPM Fusion](http://rpmfusion.org) Free repository and related additional dependencies.