Build aom from source as it is not shipped in all distributions

This commit is contained in:
Daniel Winzen
2020-09-05 22:03:25 +02:00
parent 79189b96b7
commit d7809da524
2 changed files with 16 additions and 3 deletions

View File

@ -25,7 +25,7 @@ DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends install -y apt-tr
```
The following command will install all required build dependencies for nginx and php:
```
DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends install -y autoconf automake bison g++ gcc ghostscript gnupg libaom-dev libargon2-dev libbz2-dev libbrotli-dev libc-client2007e-dev libcurl4-openssl-dev libde265-dev libdjvulibre-dev libedit-dev libenchant-dev libffi-dev libfreetype-dev libfftw3-dev libfribidi-dev libgd-dev libgmp-dev libgpg-error-dev libgpgme-dev libharfbuzz-dev libkrb5-dev libldap2-dev liblmdb-dev liblqr-1-0-dev libmariadb-dev libonig-dev libopenexr-dev libopenjp2-7-dev libpango1.0-dev libpcre3-dev libpng-dev libpspell-dev libqdbm-dev libraqm-dev libraw-dev libreadline-dev librsvg2-dev libsasl2-dev libsodium-dev libsqlite3-dev libssl-dev libsystemd-dev libtidy-dev libtool libwebp-dev libwmf-dev libx265-dev libxml2-dev libxpm-dev libxslt1-dev libzip-dev libzstd-dev make poppler-utils re2c zlib1g-dev
DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends install -y autoconf automake bison cmake g++ gcc ghostscript gnupg libargon2-dev libbz2-dev libbrotli-dev libc-client2007e-dev libcurl4-openssl-dev libde265-dev libdjvulibre-dev libedit-dev libenchant-dev libffi-dev libfreetype-dev libfftw3-dev libfribidi-dev libgd-dev libgmp-dev libgpg-error-dev libgpgme-dev libharfbuzz-dev libkrb5-dev libldap2-dev liblmdb-dev liblqr-1-0-dev libmariadb-dev libonig-dev libopenexr-dev libopenjp2-7-dev libpango1.0-dev libpcre3-dev libpng-dev libpspell-dev libqdbm-dev libraqm-dev libraw-dev libreadline-dev librsvg2-dev libsasl2-dev libsodium-dev libsqlite3-dev libssl-dev libsystemd-dev libtidy-dev libtool libwebp-dev libwmf-dev libx265-dev libxml2-dev libxpm-dev libxslt1-dev libzip-dev libzstd-dev make poppler-utils re2c zlib1g-dev
```
If you are running a distribution that is older than debian `bullseye` or ubuntu `focal`, you may encounter an error that `libargon2-dev` and/or `libfreetype-dev` were not found. Try these alternative names: `libfreetype6-dev` and `libargon2-0-dev`

View File

@ -5,6 +5,9 @@ set -e
if [ ! -e libssh2 ]; then
git clone https://github.com/libssh2/libssh2
fi
if [ ! -e aom ]; then
git clone https://aomedia.googlesource.com/aom
fi
if [ ! -e libheif ]; then
git clone https://github.com/strukturag/libheif
fi
@ -77,17 +80,27 @@ git pull
autoreconf -fi
CFLAGS="-O3 -march=native -mtune=native" ./configure
make -j $PROC_LIMIT install
make distclean
cd ..
mkdir -p aom_build
cd aom_build
cmake ../aom -DBUILD_SHARED_LIBS=1 -DENABLE_TESTS=0 -DENABLE_DOCS=0
make -j $PROC_LIMIT install
cd ..
rm -r aom_build
ldconfig
cd libheif
./autogen.sh
./configure
CFLAGS="-O3 -march=native -mtune=native" CXXFLAGS="-O3 -march=native -mtune=native" make -j $PROC_LIMIT install
CFLAGS="-O3 -march=native -mtune=native" CXXFLAGS="-O3 -march=native -mtune=native" ./configure
make -j $PROC_LIMIT install
make distclean
cd ..
ldconfig
cd ImageMagick
git pull
CXXFLAGS='-O3 -mtune=native -march=native' CFLAGS='-O3 -mtune=native -march=native' ./configure --without-perl --without-magick-plus-plus --with-rsvg=yes
make -j $PROC_LIMIT install
make distclean
cd ..
ldconfig
cd nginx