Compare commits
65 Commits
Author | SHA1 | Date | |
---|---|---|---|
954789d85e | |||
40a0c4abff | |||
d38c722239 | |||
c021c62cc7 | |||
3407101f2f | |||
55e7b4d4cc | |||
3a94004c6a | |||
a28c72c5b3 | |||
2f28155ddd | |||
49965d4417 | |||
33ff488987 | |||
67aabe0f21 | |||
21ff19f9b1 | |||
638c4cf296 | |||
7d75acd314 | |||
ca2d3eb929 | |||
6918f97766 | |||
620127c499 | |||
6f294c8090 | |||
c338491fad | |||
1568ea6846 | |||
|
3883e84369 | ||
|
4c4e4a3427 | ||
|
31fe1180b6 | ||
|
af5c80058d | ||
|
30f1ad411f | ||
|
0732f55cf0 | ||
|
6d559c78f6 | ||
|
8937c48525 | ||
45a40a07f4 | |||
|
61430f82be | ||
|
d49834d497 | ||
|
aba6d2af82 | ||
|
c5ee19c496 | ||
|
b8bae17684 | ||
|
9c6ddb6a99 | ||
|
3b9e707a17 | ||
|
07a86596fe | ||
|
27813aca54 | ||
|
026bc3bb93 | ||
|
1b2febc2ee | ||
|
6c18383508 | ||
|
172ff4c7b5 | ||
|
f9b00479f1 | ||
|
ee6ee7f0ec | ||
|
4646f0fac1 | ||
|
36ecd00b1e | ||
|
b8b2fd8272 | ||
|
c30858b348 | ||
|
60fcdc2481 | ||
|
ff22ca4c83 | ||
|
b98241453e | ||
|
b09cbdb723 | ||
|
b1e05a8421 | ||
|
9666338cf4 | ||
|
c854497171 | ||
|
1439e58fe6 | ||
|
6aef704a64 | ||
|
cfee95b266 | ||
|
7e043b5d21 | ||
|
b6c6a41dc0 | ||
|
c31ce69f82 | ||
|
c2be10f4af | ||
|
5d31c19b9a | ||
|
30b635639b |
73
README.md
73
README.md
@ -1,34 +1,63 @@
|
||||
FFmpeg static builds for GNU/Linux
|
||||
==================================
|
||||
FFmpeg builds for GNU/Linux & Windows
|
||||
=====================================
|
||||
|
||||
### FFmpeg 4.4.1 static builds:
|
||||
### FFmpeg 7.0.2 Builds:
|
||||
|
||||
* **`GNU/Linux downloads:`**
|
||||
* **`GNU/Linux downloads (Static):`**
|
||||
|
||||
* Generic (All distros):
|
||||
|
||||
* [ffmpeg-4.4.1-linux-gnu-32bit-build.tar.bz2](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-32bit-build.tar.bz2)
|
||||
* [ffmpeg-4.4.1-linux-gnu-64bit-build1.tar.bz2](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-64bit-build.tar.bz2)
|
||||
|
||||
* DEB (Debian Based):
|
||||
|
||||
* [ffmpeg-4.4.1-linux-gnu-32bit-build.deb](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-32bit-build.deb)
|
||||
* [ffmpeg-4.4.1-linux-gnu-64bit-build.deb](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-64bit-build.deb)
|
||||
* [ffmpeg-7.0.2-linux-gnu-64bit-build.tar.bz2](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-linux-gnu-64bit-build.tar.bz2) (Generic Linux x86_64)
|
||||
* [ffmpeg-7.0.2-linux-gnu-64bit-build.deb](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-linux-gnu-64bit-build.deb) (Debian/Ubuntu x86_64)
|
||||
* [ffmpeg-7.0.2-linux-gnu-64bit-build.rpm](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-linux-gnu-64bit-build.rpm) (RedHat/Fedora x86_64)
|
||||
|
||||
* RPM (RedHat Based):
|
||||
|
||||
* [ffmpeg-4.4.1-linux-gnu-32bit-build.rpm](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-32bit-build.rpm)
|
||||
* [ffmpeg-4.4.1-linux-gnu-64bit-build.rpm](https://github.com/q3aql/ffmpeg-static-builds/releases/download/v4.4.1/ffmpeg-4.4.1-linux-gnu-64bit-build.rpm)
|
||||
* **`Windows downloads (Shared):`**
|
||||
|
||||
* [ffmpeg-7.0.2-win-64bit-build.zip](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-win-64bit-build.zip)
|
||||
* [ffmpeg-7.0.2-cygwin-64bit-build.tar.gz](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-cygwin-64bit-build.tar.gz)
|
||||
|
||||
### How to install:
|
||||
### HOW TO INSTALL:
|
||||
|
||||
* **GNU/Linux instructions:**
|
||||
|
||||
* Download the package [ffmpeg-7.0.2-linux-gnu-64bit-build.tar.bz2](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-linux-gnu-64bit-build.tar.bz2).
|
||||
* Open the terminal and type the following command for install:
|
||||
* `$ sudo tar jxvf ffmpeg-7.0.2-linux-gnu-64bit-build.tar.bz2 -C /`
|
||||
|
||||
* **Windows instructions:**
|
||||
|
||||
* Download the package [ffmpeg-7.0.2-win-64bit-build.zip](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-win-64bit-build.zip).
|
||||
* Unzip the package with [7-zip](http://www.7-zip.org/) or [Winrar](http://www.rarlab.com/).
|
||||
* Copy the files to a folder. For example: `C:\Program Files\FFmpeg`
|
||||
* Add the path `C:\Program Files\FFmpeg` to [PATH](https://www.google.es/search?q=add+folder+to+PATH+on+Windows) variable.
|
||||
|
||||
* **Cygwin instructions:**
|
||||
|
||||
* Download the package [ffmpeg-7.0.2-cygwin-64bit-build.tar.gz](https://q3aql.dev/ffmpeg-builds/ffmpeg-7.0.2-cygwin-64bit-build.tar.gz).
|
||||
* Open the Cygwin terminal and type the following command for install:
|
||||
* `$ tar jxvf ffmpeg-7.0.2-cygwin-64bit-build.tar.gz -C /`
|
||||
|
||||
### HOW TO CREATE YOUR BUILD:
|
||||
|
||||
* **GNU/Linux instructions:**
|
||||
|
||||
* Open the terminal and type the following command:
|
||||
* Install dependencies in your GNU/Linux distro.
|
||||
* Dependencies: `wget`, `gcc`, `make`, `cmake`, `meson/ninja` and `git`.
|
||||
* Type the following commands:
|
||||
* `$ git clone https://git.q3aql.dev/q3aql/ffmpeg-builds`
|
||||
* `$ cd ffmpeg-builds`
|
||||
* `$ sudo ./ffmpeg-static-build-[arch].sh`
|
||||
|
||||
```shell
|
||||
$ sudo tar jxvf ffmpeg-4.4.1-linux-gnu-[arch]-build1.tar.bz2 -C /
|
||||
````
|
||||
_Note: Replace `[arch]` with `linux32` or `linux64` depending on your architecture._
|
||||
|
||||
* **Windows instructions:**
|
||||
|
||||
* Install Cygwin for [32bits](https://cygwin.com/setup-x86.exe) or [64bits](https://cygwin.com/setup-x86_64.exe).
|
||||
* During installation, `configure the repository` and install `git` and `wget` or `lynx`.
|
||||
* Open Cygwin terminal and type the following commands:
|
||||
* `$ git clone https://git.q3aql.dev/q3aql/ffmpeg-builds`
|
||||
* `$ cd ffmpeg-builds`
|
||||
* `$ ./ffmpeg-share-build-[arch].sh`
|
||||
|
||||
_Note: Replace `[arch]` with `cygwin32` or `cygwin64` depending on your architecture._
|
||||
|
||||
### Related links:
|
||||
|
||||
|
673
apt-cyg
Executable file
673
apt-cyg
Executable file
@ -0,0 +1,673 @@
|
||||
#!/bin/bash
|
||||
# apt-cyg: install tool for Cygwin similar to debian apt-get
|
||||
#
|
||||
# The MIT License (MIT)
|
||||
#
|
||||
# Copyright (c) 2013 Trans-code Design
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
|
||||
if [ ${BASH_VERSINFO}${BASH_VERSINFO[1]} -lt 42 ]
|
||||
then
|
||||
echo 'Bash version 4.2+ required'
|
||||
exit
|
||||
fi
|
||||
|
||||
usage="\
|
||||
NAME
|
||||
apt-cyg - package manager utility
|
||||
|
||||
SYNOPSIS
|
||||
apt-cyg [operation] [options] [targets]
|
||||
|
||||
DESCRIPTION
|
||||
apt-cyg is a package management utility that tracks installed packages on a
|
||||
Cygwin system. Invoking apt-cyg involves specifying an operation with any
|
||||
potential options and targets to operate on. A target is usually a package
|
||||
name, file name, URL, or a search string. Targets can be provided as command
|
||||
line arguments.
|
||||
|
||||
OPERATIONS
|
||||
install
|
||||
Install package(s).
|
||||
|
||||
remove
|
||||
Remove package(s) from the system.
|
||||
|
||||
update
|
||||
Download a fresh copy of the master package list (setup.ini) from the
|
||||
server defined in setup.rc.
|
||||
|
||||
download
|
||||
Retrieve package(s) from the server, but do not install/upgrade anything.
|
||||
|
||||
show
|
||||
Display information on given package(s).
|
||||
|
||||
depends
|
||||
Produce a dependency tree for a package.
|
||||
|
||||
rdepends
|
||||
Produce a tree of packages that depend on the named package.
|
||||
|
||||
list
|
||||
Search each locally-installed package for names that match regexp. If no
|
||||
package names are provided in the command line, all installed packages will
|
||||
be queried.
|
||||
|
||||
listall
|
||||
This will search each package in the master package list (setup.ini) for
|
||||
names that match regexp.
|
||||
|
||||
category
|
||||
Display all packages that are members of a named category.
|
||||
|
||||
listfiles
|
||||
List all files owned by a given package. Multiple packages can be specified
|
||||
on the command line.
|
||||
|
||||
search
|
||||
Search for downloaded packages that own the specified file(s). The path can
|
||||
be relative or absolute, and one or more files can be specified.
|
||||
|
||||
searchall
|
||||
Search cygwin.com to retrieve file information about packages. The provided
|
||||
target is considered to be a filename and searchall will return the
|
||||
package(s) which contain this file.
|
||||
|
||||
mirror
|
||||
Set the mirror; a full URL to a location where the database, packages, and
|
||||
signatures for this repository can be found. If no URL is provided, display
|
||||
current mirror.
|
||||
|
||||
cache
|
||||
Set the package cache directory. If a file is not found in cache directory,
|
||||
it will be downloaded. Unix and Windows forms are accepted, as well as
|
||||
absolute or regular paths. If no directory is provided, display current
|
||||
cache.
|
||||
|
||||
OPTIONS
|
||||
--nodeps
|
||||
Specify this option to skip all dependency checks.
|
||||
|
||||
--version
|
||||
Display version and exit.
|
||||
"
|
||||
|
||||
version="\
|
||||
apt-cyg version 1
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2005-9 Stephen Jungels
|
||||
"
|
||||
|
||||
function wget {
|
||||
if command wget -h &>/dev/null
|
||||
then
|
||||
command wget "$@"
|
||||
else
|
||||
warn wget is not installed, using lynx as fallback
|
||||
set "${*: -1}"
|
||||
lynx -source "$1" > "${1##*/}"
|
||||
fi
|
||||
}
|
||||
|
||||
function find-workspace {
|
||||
# default working directory and mirror
|
||||
|
||||
# work wherever setup worked last, if possible
|
||||
cache=$(awk '
|
||||
BEGIN {
|
||||
RS = "\n\\<"
|
||||
FS = "\n\t"
|
||||
}
|
||||
$1 == "last-cache" {
|
||||
print $2
|
||||
}
|
||||
' /etc/setup/setup.rc)
|
||||
|
||||
mirror=$(awk '
|
||||
/last-mirror/ {
|
||||
getline
|
||||
print $1
|
||||
}
|
||||
' /etc/setup/setup.rc)
|
||||
mirrordir=$(sed '
|
||||
s / %2f g
|
||||
s : %3a g
|
||||
' <<< "$mirror")
|
||||
|
||||
mkdir -p "$cache/$mirrordir/$arch"
|
||||
cd "$cache/$mirrordir/$arch"
|
||||
if [ -e setup.ini ]
|
||||
then
|
||||
return 0
|
||||
else
|
||||
get-setup
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
function get-setup {
|
||||
touch setup.ini
|
||||
mv setup.ini setup.ini-save
|
||||
wget -N $mirror/$arch/setup.bz2
|
||||
if [ -e setup.bz2 ]
|
||||
then
|
||||
bunzip2 setup.bz2
|
||||
mv setup setup.ini
|
||||
echo Updated setup.ini
|
||||
else
|
||||
echo Error updating setup.ini, reverting
|
||||
mv setup.ini-save setup.ini
|
||||
fi
|
||||
}
|
||||
|
||||
function check-packages {
|
||||
if [[ $pks ]]
|
||||
then
|
||||
return 0
|
||||
else
|
||||
echo No packages found.
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
function warn {
|
||||
printf '\e[1;31m%s\e[m\n' "$*" >&2
|
||||
}
|
||||
|
||||
function apt-update {
|
||||
if find-workspace
|
||||
then
|
||||
get-setup
|
||||
fi
|
||||
}
|
||||
|
||||
function apt-category {
|
||||
check-packages
|
||||
find-workspace
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
awk '
|
||||
$1 == "@" {
|
||||
pck = $2
|
||||
}
|
||||
$1 == "category:" && $0 ~ query {
|
||||
print pck
|
||||
}
|
||||
' query="$pks" setup.ini
|
||||
done
|
||||
}
|
||||
|
||||
function apt-list {
|
||||
local sbq
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
let sbq++ && echo
|
||||
awk 'NR>1 && $1~pkg && $0=$1' pkg="$pkg" /etc/setup/installed.db
|
||||
done
|
||||
let sbq && return
|
||||
awk 'NR>1 && $0=$1' /etc/setup/installed.db
|
||||
}
|
||||
|
||||
function apt-listall {
|
||||
check-packages
|
||||
find-workspace
|
||||
local sbq
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
let sbq++ && echo
|
||||
awk '$1~pkg && $0=$1' RS='\n\n@ ' FS='\n' pkg="$pkg" setup.ini
|
||||
done
|
||||
}
|
||||
|
||||
function apt-listfiles {
|
||||
check-packages
|
||||
find-workspace
|
||||
local pkg sbq
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
(( sbq++ )) && echo
|
||||
if [ ! -e /etc/setup/"$pkg".lst.gz ]
|
||||
then
|
||||
download "$pkg"
|
||||
fi
|
||||
gzip -cd /etc/setup/"$pkg".lst.gz
|
||||
done
|
||||
}
|
||||
|
||||
function apt-show {
|
||||
find-workspace
|
||||
check-packages
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
(( notfirst++ )) && echo
|
||||
awk '
|
||||
$1 == query {
|
||||
print
|
||||
fd++
|
||||
}
|
||||
END {
|
||||
if (! fd)
|
||||
print "Unable to locate package " query
|
||||
}
|
||||
' RS='\n\n@ ' FS='\n' query="$pkg" setup.ini
|
||||
done
|
||||
}
|
||||
|
||||
function apt-depends {
|
||||
find-workspace
|
||||
check-packages
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
awk '
|
||||
@include "join"
|
||||
$1 == "@" {
|
||||
apg = $2
|
||||
}
|
||||
$1 == "requires:" {
|
||||
for (z=2; z<=NF; z++)
|
||||
reqs[apg][z-1] = $z
|
||||
}
|
||||
END {
|
||||
prpg(ENVIRON["pkg"])
|
||||
}
|
||||
function smartmatch(small, large, values) {
|
||||
for (each in large)
|
||||
values[large[each]]
|
||||
return small in values
|
||||
}
|
||||
function prpg(fpg) {
|
||||
if (smartmatch(fpg, spath)) return
|
||||
spath[length(spath)+1] = fpg
|
||||
print join(spath, 1, length(spath), " > ")
|
||||
if (isarray(reqs[fpg]))
|
||||
for (each in reqs[fpg])
|
||||
prpg(reqs[fpg][each])
|
||||
delete spath[length(spath)]
|
||||
}
|
||||
' setup.ini
|
||||
done
|
||||
}
|
||||
|
||||
function apt-rdepends {
|
||||
find-workspace
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
awk '
|
||||
@include "join"
|
||||
$1 == "@" {
|
||||
apg = $2
|
||||
}
|
||||
$1 == "requires:" {
|
||||
for (z=2; z<=NF; z++)
|
||||
reqs[$z][length(reqs[$z])+1] = apg
|
||||
}
|
||||
END {
|
||||
prpg(ENVIRON["pkg"])
|
||||
}
|
||||
function smartmatch(small, large, values) {
|
||||
for (each in large)
|
||||
values[large[each]]
|
||||
return small in values
|
||||
}
|
||||
function prpg(fpg) {
|
||||
if (smartmatch(fpg, spath)) return
|
||||
spath[length(spath)+1] = fpg
|
||||
print join(spath, 1, length(spath), " < ")
|
||||
if (isarray(reqs[fpg]))
|
||||
for (each in reqs[fpg])
|
||||
prpg(reqs[fpg][each])
|
||||
delete spath[length(spath)]
|
||||
}
|
||||
' setup.ini
|
||||
done
|
||||
}
|
||||
|
||||
function apt-download {
|
||||
check-packages
|
||||
find-workspace
|
||||
local pkg sbq
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
(( sbq++ )) && echo
|
||||
download "$pkg"
|
||||
done
|
||||
}
|
||||
|
||||
function download {
|
||||
local pkg digest digactual
|
||||
pkg=$1
|
||||
# look for package and save desc file
|
||||
|
||||
awk '$1 == pc' RS='\n\n@ ' FS='\n' pc=$pkg setup.ini > desc
|
||||
if [ ! -s desc ]
|
||||
then
|
||||
echo Unable to locate package $pkg
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# download and unpack the bz2 or xz file
|
||||
|
||||
# pick the latest version, which comes first
|
||||
set -- $(awk '$1 == "install:"' desc)
|
||||
if (( ! $# ))
|
||||
then
|
||||
echo 'Could not find "install" in package description: obsolete package?'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dn=$(dirname $2)
|
||||
bn=$(basename $2)
|
||||
|
||||
# check the md5
|
||||
digest=$4
|
||||
case ${#digest} in
|
||||
32) hash=md5sum ;;
|
||||
128) hash=sha512sum ;;
|
||||
esac
|
||||
mkdir -p "$cache/$mirrordir/$dn"
|
||||
cd "$cache/$mirrordir/$dn"
|
||||
if ! test -e $bn || ! $hash -c <<< "$digest $bn"
|
||||
then
|
||||
wget -O $bn $mirror/$dn/$bn
|
||||
$hash -c <<< "$digest $bn" || exit
|
||||
fi
|
||||
|
||||
tar tf $bn | gzip > /etc/setup/"$pkg".lst.gz
|
||||
cd ~-
|
||||
mv desc "$cache/$mirrordir/$dn"
|
||||
echo $dn $bn > /tmp/dwn
|
||||
}
|
||||
|
||||
function apt-search {
|
||||
check-packages
|
||||
echo Searching downloaded packages...
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
key=$(type -P "$pkg" | sed s./..)
|
||||
[[ $key ]] || key=$pkg
|
||||
for manifest in /etc/setup/*.lst.gz
|
||||
do
|
||||
if gzip -cd $manifest | grep -q "$key"
|
||||
then
|
||||
package=$(sed '
|
||||
s,/etc/setup/,,
|
||||
s,.lst.gz,,
|
||||
' <<< $manifest)
|
||||
echo $package
|
||||
fi
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
function apt-searchall {
|
||||
cd /tmp
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
printf -v qs 'text=1&arch=%s&grep=%s' $arch "$pkg"
|
||||
wget -O matches cygwin.com/cgi-bin2/package-grep.cgi?"$qs"
|
||||
awk '
|
||||
NR == 1 {next}
|
||||
mc[$1]++ {next}
|
||||
/-debuginfo-/ {next}
|
||||
/^cygwin32-/ {next}
|
||||
{print $1}
|
||||
' FS=-[[:digit:]] matches
|
||||
done
|
||||
}
|
||||
|
||||
function apt-install {
|
||||
check-packages
|
||||
find-workspace
|
||||
local pkg dn bn requires wr package sbq script
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
|
||||
if grep -q "^$pkg " /etc/setup/installed.db
|
||||
then
|
||||
echo Package $pkg is already installed, skipping
|
||||
continue
|
||||
fi
|
||||
(( sbq++ )) && echo
|
||||
echo Installing $pkg
|
||||
|
||||
download $pkg
|
||||
read dn bn </tmp/dwn
|
||||
echo Unpacking...
|
||||
|
||||
cd "$cache/$mirrordir/$dn"
|
||||
tar -x -C / -f $bn
|
||||
# update the package database
|
||||
|
||||
awk '
|
||||
ins != 1 && pkg < $1 {
|
||||
print pkg, bz, 0
|
||||
ins = 1
|
||||
}
|
||||
1
|
||||
END {
|
||||
if (ins != 1) print pkg, bz, 0
|
||||
}
|
||||
' pkg="$pkg" bz=$bn /etc/setup/installed.db > /tmp/awk.$$
|
||||
mv /etc/setup/installed.db /etc/setup/installed.db-save
|
||||
mv /tmp/awk.$$ /etc/setup/installed.db
|
||||
|
||||
[ -v nodeps ] && continue
|
||||
# recursively install required packages
|
||||
|
||||
requires=$(awk '$1=="requires", $0=$2' FS=': ' desc)
|
||||
cd ~-
|
||||
wr=0
|
||||
if [[ $requires ]]
|
||||
then
|
||||
echo Package $pkg requires the following packages, installing:
|
||||
echo $requires
|
||||
for package in $requires
|
||||
do
|
||||
if grep -q "^$package " /etc/setup/installed.db
|
||||
then
|
||||
echo Package $package is already installed, skipping
|
||||
continue
|
||||
fi
|
||||
apt-cyg install --noscripts $package || (( wr++ ))
|
||||
done
|
||||
fi
|
||||
if (( wr ))
|
||||
then
|
||||
echo some required packages did not install, continuing
|
||||
fi
|
||||
|
||||
# run all postinstall scripts
|
||||
|
||||
[ -v noscripts ] && continue
|
||||
find /etc/postinstall -name '*.sh' | while read script
|
||||
do
|
||||
echo Running $script
|
||||
$script
|
||||
mv $script $script.done
|
||||
done
|
||||
echo Package $pkg installed
|
||||
|
||||
done
|
||||
}
|
||||
|
||||
function apt-remove {
|
||||
check-packages
|
||||
cd /etc
|
||||
cygcheck awk bash bunzip2 grep gzip mv sed tar xz > setup/essential.lst
|
||||
for pkg in "${pks[@]}"
|
||||
do
|
||||
|
||||
if ! grep -q "^$pkg " setup/installed.db
|
||||
then
|
||||
echo Package $pkg is not installed, skipping
|
||||
continue
|
||||
fi
|
||||
|
||||
if [ ! -e setup/"$pkg".lst.gz ]
|
||||
then
|
||||
warn Package manifest missing, cannot remove $pkg. Exiting
|
||||
exit 1
|
||||
fi
|
||||
gzip -dk setup/"$pkg".lst.gz
|
||||
awk '
|
||||
NR == FNR {
|
||||
if ($NF) ess[$NF]
|
||||
next
|
||||
}
|
||||
$NF in ess {
|
||||
exit 1
|
||||
}
|
||||
' FS='[/\\\\]' setup/{essential,$pkg}.lst
|
||||
esn=$?
|
||||
if [ $esn = 0 ]
|
||||
then
|
||||
echo Removing $pkg
|
||||
if [ -e preremove/"$pkg".sh ]
|
||||
then
|
||||
preremove/"$pkg".sh
|
||||
rm preremove/"$pkg".sh
|
||||
fi
|
||||
mapfile dt < setup/"$pkg".lst
|
||||
for each in ${dt[*]}
|
||||
do
|
||||
[ -f /$each ] && rm /$each
|
||||
done
|
||||
for each in ${dt[*]}
|
||||
do
|
||||
[ -d /$each ] && rmdir --i /$each
|
||||
done
|
||||
rm -f setup/"$pkg".lst.gz postinstall/"$pkg".sh.done
|
||||
awk -i inplace '$1 != ENVIRON["pkg"]' setup/installed.db
|
||||
echo Package $pkg removed
|
||||
fi
|
||||
rm setup/"$pkg".lst
|
||||
if [ $esn = 1 ]
|
||||
then
|
||||
warn apt-cyg cannot remove package $pkg, exiting
|
||||
exit 1
|
||||
fi
|
||||
|
||||
done
|
||||
}
|
||||
|
||||
function apt-mirror {
|
||||
if [ "$pks" ]
|
||||
then
|
||||
awk -i inplace '
|
||||
1
|
||||
/last-mirror/ {
|
||||
getline
|
||||
print "\t" pks
|
||||
}
|
||||
' pks="$pks" /etc/setup/setup.rc
|
||||
echo Mirror set to "$pks".
|
||||
else
|
||||
awk '
|
||||
/last-mirror/ {
|
||||
getline
|
||||
print $1
|
||||
}
|
||||
' /etc/setup/setup.rc
|
||||
fi
|
||||
}
|
||||
|
||||
function apt-cache {
|
||||
if [ "$pks" ]
|
||||
then
|
||||
vas=$(cygpath -aw "$pks")
|
||||
awk -i inplace '
|
||||
1
|
||||
/last-cache/ {
|
||||
getline
|
||||
print "\t" vas
|
||||
}
|
||||
' vas="${vas//\\/\\\\}" /etc/setup/setup.rc
|
||||
echo Cache set to "$vas".
|
||||
else
|
||||
awk '
|
||||
/last-cache/ {
|
||||
getline
|
||||
print $1
|
||||
}
|
||||
' /etc/setup/setup.rc
|
||||
fi
|
||||
}
|
||||
|
||||
if [ -p /dev/stdin ]
|
||||
then
|
||||
mapfile -t pks
|
||||
fi
|
||||
|
||||
# process options
|
||||
until [ $# = 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
|
||||
--nodeps)
|
||||
nodeps=1
|
||||
shift
|
||||
;;
|
||||
|
||||
--noscripts)
|
||||
noscripts=1
|
||||
shift
|
||||
;;
|
||||
|
||||
--version)
|
||||
printf "$version"
|
||||
exit
|
||||
;;
|
||||
|
||||
update)
|
||||
command=$1
|
||||
shift
|
||||
;;
|
||||
|
||||
list | cache | remove | depends | listall | download | listfiles |\
|
||||
show | mirror | search | install | category | rdepends | searchall )
|
||||
if [[ $command ]]
|
||||
then
|
||||
pks+=("$1")
|
||||
else
|
||||
command=$1
|
||||
fi
|
||||
shift
|
||||
;;
|
||||
|
||||
*)
|
||||
pks+=("$1")
|
||||
shift
|
||||
;;
|
||||
|
||||
esac
|
||||
done
|
||||
|
||||
set -a
|
||||
|
||||
if type -t apt-$command | grep -q function
|
||||
then
|
||||
readonly arch=${HOSTTYPE/i6/x}
|
||||
apt-$command
|
||||
else
|
||||
printf "$usage"
|
||||
fi
|
6611
cygwin_fix_strsafe.h
Normal file
6611
cygwin_fix_strsafe.h
Normal file
File diff suppressed because it is too large
Load Diff
390
ffmpeg-shared-build-cywin32.sh
Executable file
390
ffmpeg-shared-build-cywin32.sh
Executable file
@ -0,0 +1,390 @@
|
||||
#!/bin/bash
|
||||
|
||||
###########################################
|
||||
# Script for build FFmpeg on Cygwin x86 #
|
||||
# Author: q3aql #
|
||||
# Contact: q3aql@duck.com #
|
||||
###########################################
|
||||
|
||||
# IMPORTANT
|
||||
# YOU NEED INSTALL:
|
||||
# - wget
|
||||
# - git
|
||||
|
||||
# Build variables
|
||||
dir_build="/opt/ffmpeg-builds/build/cygwin32-shared"
|
||||
dir_build_libs="/opt/ffmpeg-builds/lib/cygwin32-shared"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# COMPILER VARIABLES
|
||||
C_COMPILER="gcc"
|
||||
CXX_COMPILER="g++"
|
||||
|
||||
# URL Libraries Variables
|
||||
lib_x264="https://code.videolan.org/videolan/x264"
|
||||
lib_x264_name="x264"
|
||||
|
||||
lib_x265="https://bitbucket.org/multicoreware/x265_git/downloads/x265_3.5.tar.gz"
|
||||
lib_x265_name="x265_3.5.tar.gz@x265_3.5"
|
||||
|
||||
lib_xvid="https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.gz"
|
||||
lib_xvid_name="xvidcore-1.3.7.tar.gz@xvidcore"
|
||||
|
||||
lib_aom_msys="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-aom-3.8.0-1-any.pkg.tar.zst"
|
||||
lib_aom_msys_name="mingw-w64-i686-aom-3.8.0-1-any.pkg.tar.zst@mingw32"
|
||||
#https://packages.msys2.org/package/mingw-w64-i686-aom
|
||||
|
||||
# Dependencies for aom
|
||||
dep_one="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-gcc-libs-13.2.0-3-any.pkg.tar.zst"
|
||||
dep_one_name="mingw-w64-i686-gcc-libs-13.2.0-3-any.pkg.tar.zst"
|
||||
dep_two="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-libwinpthread-git-11.0.0.r442.ga27e7b27e-1-any.pkg.tar.zst"
|
||||
dep_two_name="mingw-w64-i686-libwinpthread-git-11.0.0.r442.ga27e7b27e-1-any.pkg.tar.zst"
|
||||
dep_three="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-gmp-6.3.0-2-any.pkg.tar.zst"
|
||||
dep_three_name="mingw-w64-i686-gmp-6.3.0-2-any.pkg.tar.zst"
|
||||
dep_four="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-mpc-1.3.1-2-any.pkg.tar.zst"
|
||||
dep_four_name="mingw-w64-i686-mpc-1.3.1-2-any.pkg.tar.zst"
|
||||
dep_five="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-mpfr-4.2.0-1-any.pkg.tar.zst"
|
||||
dep_five_name="mingw-w64-i686-mpfr-4.2.0-1-any.pkg.tar.zst"
|
||||
dep_six="https://repo.msys2.org/mingw/mingw32/mingw-w64-i686-zimg-3.0.5-2-any.pkg.tar.zst"
|
||||
dep_six_name="mingw-w64-i686-zimg-3.0.5-2-any.pkg.tar.zst"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
administrador=$?
|
||||
if [ ${administrador} -eq 0 ] ; then
|
||||
rm -rf /etc/root
|
||||
else
|
||||
echo ""
|
||||
echo "* ${0}"
|
||||
echo ""
|
||||
echo "* Administrator permissions are required."
|
||||
echo ""
|
||||
exit
|
||||
fi
|
||||
|
||||
# Create directories
|
||||
mkdir -p ${dir_build}
|
||||
mkdir -p ${dir_build_libs}
|
||||
mkdir -p ${dir_build_packages}
|
||||
|
||||
# Install apt-cyg
|
||||
if [ -f "/usr/bin/apt-cyg" ] ; then
|
||||
echo "* apt-cyg manager is ready"
|
||||
sleep 1
|
||||
else
|
||||
cd /tmp
|
||||
git clone "https://github.com/q3aql/ffmpeg-builds"
|
||||
cd ffmpeg-builds
|
||||
cp -rfv apt-cyg /usr/bin
|
||||
echo "* apt-cyg installed"
|
||||
fi
|
||||
|
||||
# Fix strafe.sh
|
||||
if [ -f /usr/include/w32api/strsafe.h_fix ] ; then
|
||||
echo "* strsafe.h was fixed previously"
|
||||
else
|
||||
cd /tmp
|
||||
git clone "https://github.com/q3aql/ffmpeg-builds"
|
||||
cd ffmpeg-builds
|
||||
cp -rfv /usr/include/w32api/strsafe.h /usr/include/w32api/strsafe.h.bck
|
||||
cp -rfv cygwin_fix_strsafe.h /usr/include/w32api/strsafe.h
|
||||
cp -rfv cygwin_fix_strsafe.h /usr/include/w32api/strsafe.h_fix
|
||||
echo "* strsafe.sh fixed"
|
||||
fi
|
||||
|
||||
# Install dependencies
|
||||
apt-cyg update
|
||||
apt-cyg install wget
|
||||
apt-cyg install curl
|
||||
apt-cyg install nasm
|
||||
apt-cyg install yasm
|
||||
apt-cyg install zip
|
||||
apt-cyg install perl
|
||||
apt-cyg install sed
|
||||
apt-cyg install fontconfig
|
||||
apt-cyg install libass-devel
|
||||
apt-cyg install libfreetype-devel
|
||||
apt-cyg install libfontconfig-devel
|
||||
apt-cyg install libbs2b-devel
|
||||
apt-cyg install meson
|
||||
apt-cyg install make
|
||||
apt-cyg install gcc
|
||||
apt-cyg install gcc-core
|
||||
apt-cyg install gcc-g++
|
||||
apt-cyg install zstd
|
||||
apt-cyg install libfribidi-devel
|
||||
apt-cyg install libgme-devel
|
||||
apt-cyg install libcaca++-devel
|
||||
apt-cyg install libcaca-devel
|
||||
apt-cyg install libtwolame-devel
|
||||
apt-cyg install libmp3lame-devel
|
||||
apt-cyg install libwebp-devel
|
||||
apt-cyg install libsoxr-devel
|
||||
apt-cyg install libvpx-devel
|
||||
apt-cyg install libtheora-devel
|
||||
apt-cyg install libxml2-devel
|
||||
apt-cyg install libopenjpeg-devel
|
||||
apt-cyg install libgnutls-devel
|
||||
apt-cyg install libvorbis-devel
|
||||
apt-cyg install libogg-devel
|
||||
apt-cyg install libopus-devel
|
||||
apt-cyg install openssl-devel
|
||||
apt-cyg install libopusfile-devel
|
||||
apt-cyg install libopenjp2-devel
|
||||
apt-cyg install libtheora-devel
|
||||
apt-cyg install speex-devel
|
||||
apt-cyg install speexdsp-devel
|
||||
apt-cyg install cmake
|
||||
apt-cyg install libgc-devel
|
||||
apt-cyg install autoconf
|
||||
apt-cyg install libtool
|
||||
apt-cyg install ninja
|
||||
apt-cyg install libiconv-devel
|
||||
apt-cyg install clang
|
||||
apt-cyg install compiler-rt
|
||||
apt-cyg install libjson-c-common
|
||||
apt-cyg install libc++abi-devel
|
||||
apt-cyg install libc++-devel
|
||||
|
||||
# Build x264
|
||||
if [ -f /usr/lib/pkgconfig/x264.pc ] ; then
|
||||
echo "* x264 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_folder=$(echo ${lib_x264_name})
|
||||
name_package=$(echo ${lib_x264_name})
|
||||
git clone ${lib_x264}
|
||||
cd "${name_folder}"
|
||||
./configure --prefix=/usr --enable-static --disable-opencl --disable-cli
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build x265
|
||||
if [ -f /usr/lib/pkgconfig/x265.pc ] ; then
|
||||
echo "* x265 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_x265_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_x265_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_x265}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
cd build/linux
|
||||
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DSTATIC_LINK_CRT:BOOL=ON -DENABLE_CLI:BOOL=OFF ../../source
|
||||
sed -i 's/-lgcc_s/-lgcc_eh/g' x265.pc
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build xvid
|
||||
if [ -f /usr/lib/xvidcore.a ] ; then
|
||||
echo "* Xvid was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_xvid_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_xvid_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_xvid}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"/build/generic
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build aom
|
||||
if [ -f /usr/lib/pkgconfig/aom.pc ] ; then
|
||||
echo "* Aom was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
name_package=$(echo ${lib_aom_msys_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_aom_msys_name} | cut -d "@" -f 2)
|
||||
cd /tmp
|
||||
wget -c ${lib_aom_msys}
|
||||
tar --use-compress-program=unzstd -xvf ${name_package}
|
||||
cd ${name_folder}
|
||||
cp -rfv * /usr/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
# Install binary dependencies
|
||||
cd /tmp
|
||||
wget -c ${dep_one}
|
||||
wget -c ${dep_two}
|
||||
wget -c ${dep_three}
|
||||
wget -c ${dep_four}
|
||||
wget -c ${dep_five}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_one_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_two_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_three_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_four_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_five_name}
|
||||
cd ${name_folder}
|
||||
cp -rfv bin/* /usr/bin/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
wget -c ${dep_six}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_six_name}
|
||||
cd ${name_folder}
|
||||
cp -rfv * /usr/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
|
||||
# Download FFmpeg
|
||||
cd / && ln -s usr mingw32
|
||||
unlink /mingw32/usr 2> /dev/null
|
||||
echo "* Building FFmpeg using system libraries"
|
||||
cd ${dir_build_libs}
|
||||
name_package=$(echo ${ffmpeg_package_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${ffmpeg_package_name} | cut -d "@" -f 2)
|
||||
curl "${ffmpeg_package}" > ${name_package}
|
||||
wget -c ${ffmpeg_package}
|
||||
tar jxvf ${name_package}
|
||||
cd ${name_folder}
|
||||
chmod +x configure
|
||||
./configure --prefix=${dir_build} --enable-gpl --enable-nonfree --disable-ffplay --disable-w32threads --enable-openssl --enable-libass --enable-libbs2b --enable-libcaca --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libxvid --enable-libspeex --enable-libx264 --enable-libx265 --enable-static --enable-version3 --enable-doc --disable-indev=dshow --disable-indev=gdigrab --enable-libaom --enable-libzimg
|
||||
build_error=$?
|
||||
if [ ${build_error} -eq 0 ] ; then
|
||||
echo ""
|
||||
echo "* Build configuration ready"
|
||||
sleep 5
|
||||
else
|
||||
echo ""
|
||||
echo "* Build configuration failed"
|
||||
echo "* Trying with build config without errors."
|
||||
echo "* Disabling the following libraries:"
|
||||
echo " - aom"
|
||||
echo ""
|
||||
sleep 5
|
||||
./configure --prefix=${dir_build} --enable-gpl --enable-nonfree --disable-ffplay --disable-w32threads --enable-openssl --enable-libass --enable-libbs2b --enable-libcaca --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libxvid --enable-libspeex --enable-libx264 --enable-libx265 --enable-static --enable-version3 --enable-doc --disable-indev=dshow --disable-indev=gdigrab --disable-libaom --enable-libzimg
|
||||
fi
|
||||
make
|
||||
rm -rf ${dir_build}/*
|
||||
make install
|
||||
|
||||
# Remove packages
|
||||
echo "* Remove temporal files"
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rf ${name_folder}
|
||||
|
||||
# Copy libraries
|
||||
mkdir -p ${dir_build}/bin
|
||||
echo "* Searching dependencies for FFmpeg"
|
||||
ldd ${dir_build}/bin/ffmpeg.exe | grep "/bin/" | cut -d ">" -f 2 | cut -d "(" -f 1 | tr -s " " > /tmp/deps.txt
|
||||
file_size=$(cat /tmp/deps.txt | wc -l)
|
||||
file_scan=1
|
||||
while [ ${file_scan} -le ${file_size} ] ; do
|
||||
library=$(cat /tmp/deps.txt | head -${file_scan} | tail -1)
|
||||
cp -rfv ${library} ${dir_build}/bin
|
||||
file_scan=$(expr ${file_scan} + 1)
|
||||
done
|
||||
echo "* Searching dependencies for FFprobe"
|
||||
ldd ${dir_build}/bin/ffprobe.exe | grep "/bin/" | cut -d ">" -f 2 | cut -d "(" -f 1 | tr -s " " > /tmp/deps.txt
|
||||
file_size=$(cat /tmp/deps.txt | wc -l)
|
||||
file_scan=1
|
||||
while [ ${file_scan} -le ${file_size} ] ; do
|
||||
library=$(cat /tmp/deps.txt | head -${file_scan} | tail -1)
|
||||
cp -rfv ${library} ${dir_build}/bin
|
||||
file_scan=$(expr ${file_scan} + 1)
|
||||
done
|
||||
strip --strip-all ${dir_build}/bin/*
|
||||
cp -rfv /usr/bin/cyggcc_s-*.dll ${dir_build}/bin/
|
||||
cp -rfv /usr/bin/cygwin1.dll ${dir_build}/bin/
|
||||
cp -rfv /usr/bin/cygz.dll ${dir_build}/bin/
|
||||
|
||||
# Create CMD scripts for FFmpeg and FFprobe
|
||||
echo "* Creating CMD scripts for FFmpeg and FFprobe"
|
||||
echo "@echo off" > ${dir_build}/ffmpeg.cmd
|
||||
echo "" >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set run_binary="%~d0%~p0\bin\ffmpeg.exe"' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo '%run_binary% %FFmpegArgs%' >> ${dir_build}/ffmpeg.cmd
|
||||
echo "* Script ffmpeg.cmd created"
|
||||
echo "@echo off" > ${dir_build}/ffprobe.cmd
|
||||
echo "" >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set run_binary="%~d0%~p0\bin\ffprobe.exe"' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo '%run_binary% %FFmpegArgs%' >> ${dir_build}/ffprobe.cmd
|
||||
echo "* Script ffprobe.cmd created"
|
||||
|
||||
# Create package
|
||||
echo "* Creating package"
|
||||
cd ${dir_build}
|
||||
rm -rf lib
|
||||
rm -rf include
|
||||
zip ${name_folder}-win-32bit-build.zip -r *
|
||||
rm -rf ${dir_build_packages}/${name_folder}-win-32bit-build.zip
|
||||
mv ${name_folder}-win-32bit-build.zip ${dir_build_packages}
|
||||
echo ""
|
||||
echo "* Your build: ${dir_build_packages}/${name_folder}-win-32bit-build.zip"
|
||||
echo ""
|
||||
chmod 775 -R ${dir_build_packages}
|
||||
|
||||
|
414
ffmpeg-shared-build-cywin64.sh
Executable file
414
ffmpeg-shared-build-cywin64.sh
Executable file
@ -0,0 +1,414 @@
|
||||
#!/bin/bash
|
||||
|
||||
############################################
|
||||
# Script for build FFmpeg on Cygwin x86_64 #
|
||||
# Author: q3aql #
|
||||
# Contact: q3aql@duck.com #
|
||||
############################################
|
||||
|
||||
# IMPORTANT
|
||||
# YOU NEED INSTALL:
|
||||
# - wget
|
||||
# - git
|
||||
|
||||
# Build variables
|
||||
dir_build="/opt/ffmpeg-builds/build/cygwin64-shared"
|
||||
dir_build_libs="/opt/ffmpeg-builds/lib/cygwin64-shared"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# COMPILER VARIABLES
|
||||
C_COMPILER="gcc"
|
||||
CXX_COMPILER="g++"
|
||||
|
||||
# URL Libraries Variables
|
||||
lib_x264="https://code.videolan.org/videolan/x264"
|
||||
lib_x264_name="x264"
|
||||
|
||||
lib_x265="https://bitbucket.org/multicoreware/x265_git/downloads/x265_3.5.tar.gz"
|
||||
lib_x265_name="x265_3.5.tar.gz@x265_3.5"
|
||||
|
||||
lib_xvid="https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.gz"
|
||||
lib_xvid_name="xvidcore-1.3.7.tar.gz@xvidcore"
|
||||
|
||||
lib_aom_msys="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-aom-3.8.0-1-any.pkg.tar.zst"
|
||||
lib_aom_msys_name="mingw-w64-x86_64-aom-3.8.0-1-any.pkg.tar.zst@mingw64"
|
||||
#https://packages.msys2.org/package/mingw-w64-i686-aom
|
||||
|
||||
lib_svtav1_msys="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-svt-av1-2.0.0-1-any.pkg.tar.zst"
|
||||
lib_svtav1_msys_name="mingw-w64-x86_64-svt-av1-2.0.0-1-any.pkg.tar.zst@mingw64"
|
||||
|
||||
# Dependencies for aom
|
||||
dep_one="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-libs-12.2.0-6-any.pkg.tar.zst"
|
||||
dep_one_name="mingw-w64-x86_64-gcc-libs-12.2.0-6-any.pkg.tar.zst"
|
||||
dep_two="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-10.0.0.r0.gaa08f56da-1-any.pkg.tar.zst"
|
||||
dep_two_name="mingw-w64-x86_64-libwinpthread-git-10.0.0.r0.gaa08f56da-1-any.pkg.tar.zst"
|
||||
dep_three="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gmp-6.2.1-5-any.pkg.tar.zst"
|
||||
dep_three_name="mingw-w64-x86_64-gmp-6.2.1-5-any.pkg.tar.zst"
|
||||
dep_four="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-1-any.pkg.tar.zst"
|
||||
dep_four_name="mingw-w64-x86_64-mpc-1.3.1-1-any.pkg.tar.zst"
|
||||
dep_five="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.0-1-any.pkg.tar.zst"
|
||||
dep_five_name="mingw-w64-x86_64-mpfr-4.2.0-1-any.pkg.tar.zst"
|
||||
dep_six="https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-zimg-3.0.5-2-any.pkg.tar.zst"
|
||||
dep_six_name="mingw-w64-x86_64-zimg-3.0.5-2-any.pkg.tar.zst"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
administrador=$?
|
||||
if [ ${administrador} -eq 0 ] ; then
|
||||
rm -rf /etc/root
|
||||
else
|
||||
echo ""
|
||||
echo "* ${0}"
|
||||
echo ""
|
||||
echo "* Administrator permissions are required."
|
||||
echo ""
|
||||
exit
|
||||
fi
|
||||
|
||||
# Create directories
|
||||
mkdir -p ${dir_build}
|
||||
mkdir -p ${dir_build_libs}
|
||||
mkdir -p ${dir_build_packages}
|
||||
|
||||
# Install apt-cyg
|
||||
if [ -f "/usr/bin/apt-cyg" ] ; then
|
||||
echo "* apt-cyg manager is ready"
|
||||
sleep 1
|
||||
else
|
||||
cd /tmp
|
||||
git clone "https://github.com/q3aql/ffmpeg-builds"
|
||||
cd ffmpeg-builds
|
||||
cp -rfv apt-cyg /usr/bin
|
||||
echo "* apt-cyg installed"
|
||||
fi
|
||||
|
||||
# Fix strafe.sh
|
||||
if [ -f /usr/include/w32api/strsafe.h_fix ] ; then
|
||||
echo "* strsafe.h was fixed previously"
|
||||
else
|
||||
cd /tmp
|
||||
git clone "https://github.com/q3aql/ffmpeg-builds"
|
||||
cd ffmpeg-builds
|
||||
cp -rfv /usr/include/w32api/strsafe.h /usr/include/w32api/strsafe.h.bck
|
||||
cp -rfv cygwin_fix_strsafe.h /usr/include/w32api/strsafe.h
|
||||
cp -rfv cygwin_fix_strsafe.h /usr/include/w32api/strsafe.h_fix
|
||||
echo "* strsafe.sh fixed"
|
||||
fi
|
||||
|
||||
# Install dependencies
|
||||
apt-cyg update
|
||||
apt-cyg install wget
|
||||
apt-cyg install curl
|
||||
apt-cyg install nasm
|
||||
apt-cyg install yasm
|
||||
apt-cyg install zip
|
||||
apt-cyg install perl
|
||||
apt-cyg install sed
|
||||
apt-cyg install fontconfig
|
||||
apt-cyg install libass-devel
|
||||
apt-cyg install libfreetype-devel
|
||||
apt-cyg install libfontconfig-devel
|
||||
apt-cyg install libbs2b-devel
|
||||
apt-cyg install meson
|
||||
apt-cyg install make
|
||||
apt-cyg install gcc
|
||||
apt-cyg install gcc-core
|
||||
apt-cyg install gcc-g++
|
||||
apt-cyg install zstd
|
||||
apt-cyg install libfribidi-devel
|
||||
apt-cyg install libgme-devel
|
||||
apt-cyg install libcaca++-devel
|
||||
apt-cyg install libcaca-devel
|
||||
apt-cyg install libtwolame-devel
|
||||
apt-cyg install libmp3lame-devel
|
||||
apt-cyg install libwebp-devel
|
||||
apt-cyg install libsoxr-devel
|
||||
apt-cyg install libvpx-devel
|
||||
apt-cyg install libtheora-devel
|
||||
apt-cyg install libxml2-devel
|
||||
apt-cyg install libopenjpeg-devel
|
||||
apt-cyg install libgnutls-devel
|
||||
apt-cyg install libvorbis-devel
|
||||
apt-cyg install libogg-devel
|
||||
apt-cyg install libopus-devel
|
||||
apt-cyg install openssl-devel
|
||||
apt-cyg install libopusfile-devel
|
||||
apt-cyg install libopenjp2-devel
|
||||
apt-cyg install libtheora-devel
|
||||
apt-cyg install speex-devel
|
||||
apt-cyg install speexdsp-devel
|
||||
apt-cyg install cmake
|
||||
apt-cyg install libgc-devel
|
||||
apt-cyg install autoconf
|
||||
apt-cyg install libtool
|
||||
apt-cyg install ninja
|
||||
apt-cyg install libiconv-devel
|
||||
apt-cyg install clang
|
||||
apt-cyg install compiler-rt
|
||||
apt-cyg install libjson-c-common
|
||||
apt-cyg install libc++abi-devel
|
||||
apt-cyg install libc++-devel
|
||||
|
||||
# Build x264
|
||||
if [ -f /usr/lib/pkgconfig/x264.pc ] ; then
|
||||
echo "* x264 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_folder=$(echo ${lib_x264_name})
|
||||
name_package=$(echo ${lib_x264_name})
|
||||
git clone ${lib_x264}
|
||||
cd "${name_folder}"
|
||||
./configure --prefix=/usr --enable-static --disable-opencl --disable-cli
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build x265
|
||||
if [ -f /usr/lib/pkgconfig/x265.pc ] ; then
|
||||
echo "* x265 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_x265_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_x265_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_x265}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
cd build/linux
|
||||
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DSTATIC_LINK_CRT:BOOL=ON -DENABLE_CLI:BOOL=OFF ../../source
|
||||
sed -i 's/-lgcc_s/-lgcc_eh/g' x265.pc
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build xvid
|
||||
if [ -f /usr/lib/xvidcore.a ] ; then
|
||||
echo "* Xvid was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_xvid_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_xvid_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_xvid}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"/build/generic
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build aom
|
||||
if [ -f /usr/lib/pkgconfig/aom.pc ] ; then
|
||||
echo "* Aom was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
name_package=$(echo ${lib_aom_msys_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_aom_msys_name} | cut -d "@" -f 2)
|
||||
cd /tmp
|
||||
wget ${lib_aom_msys}
|
||||
tar --use-compress-program=unzstd -xvf ${name_package}
|
||||
cd ${name_folder}
|
||||
cp -rfv * /usr/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
# Install binary dependencies
|
||||
cd /tmp
|
||||
wget -c ${dep_one}
|
||||
wget -c ${dep_two}
|
||||
wget -c ${dep_three}
|
||||
wget -c ${dep_four}
|
||||
wget -c ${dep_five}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_one_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_two_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_three_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_four_name}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_five_name}
|
||||
cd ${name_folder}
|
||||
cp -rfv bin/* /usr/bin/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
wget -c ${dep_six}
|
||||
tar --use-compress-program=unzstd -xvf ${dep_six_name}
|
||||
cd ${name_folder}
|
||||
cp -rfv * /usr/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
|
||||
# Build SVT-AV1
|
||||
if [ -f /usr/lib/pkgconfig/SvtAv1Dec.pc ] ; then
|
||||
echo "* SVT-AV1 was compiled previously"
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
name_package=$(echo ${lib_svtav1_msys_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_svtav1_msys_name} | cut -d "@" -f 2)
|
||||
cd /tmp
|
||||
wget ${lib_svtav1_msys}
|
||||
tar --use-compress-program=unzstd -xvf ${name_package}
|
||||
cd ${name_folder}
|
||||
cp -rfv * /usr/
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
|
||||
# Download FFmpeg
|
||||
cd / && ln -s usr mingw64
|
||||
unlink /mingw64/usr 2> /dev/null
|
||||
echo "* Building FFmpeg using system libraries"
|
||||
cd ${dir_build_libs}
|
||||
name_package=$(echo ${ffmpeg_package_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${ffmpeg_package_name} | cut -d "@" -f 2)
|
||||
curl "${ffmpeg_package}" > ${name_package}
|
||||
wget -c ${ffmpeg_package}
|
||||
tar jxvf ${name_package}
|
||||
cd ${name_folder}
|
||||
chmod +x configure
|
||||
./configure --prefix=${dir_build} --enable-gpl --enable-nonfree --disable-ffplay --disable-w32threads --enable-openssl --enable-libass --enable-libbs2b --enable-libcaca --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libxvid --enable-libspeex --enable-libx264 --enable-libx265 --enable-static --enable-version3 --enable-doc --disable-indev=dshow --disable-indev=gdigrab --enable-libsvtav1 --enable-libaom --enable-libzimg
|
||||
build_error=$?
|
||||
if [ ${build_error} -eq 0 ] ; then
|
||||
echo ""
|
||||
echo "* Build configuration ready"
|
||||
sleep 5
|
||||
else
|
||||
echo ""
|
||||
echo "* Build configuration failed"
|
||||
echo "* Trying with build config without errors."
|
||||
echo "* Disabling the following libraries:"
|
||||
echo " - aom"
|
||||
echo ""
|
||||
sleep 5
|
||||
./configure --prefix=${dir_build} --enable-gpl --enable-nonfree --disable-ffplay --disable-w32threads --enable-openssl --enable-libass --enable-libbs2b --enable-libcaca --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libxvid --enable-libspeex --enable-libx264 --enable-libx265 --enable-static --enable-version3 --enable-doc --disable-indev=dshow --disable-indev=gdigrab --enable-libsvtav1 --disable-libaom --enable-libzimg
|
||||
fi
|
||||
make
|
||||
rm -rf ${dir_build}/*
|
||||
make install
|
||||
|
||||
# Remove packages
|
||||
echo "* Remove temporal files"
|
||||
cd ..
|
||||
rm -rfv ${name_package}
|
||||
rm -rf ${name_folder}
|
||||
|
||||
# Copy libraries
|
||||
mkdir -p ${dir_build}/bin
|
||||
echo "* Searching dependencies for FFmpeg"
|
||||
ldd ${dir_build}/bin/ffmpeg.exe | grep "/bin/" | cut -d ">" -f 2 | cut -d "(" -f 1 | tr -s " " > /tmp/deps.txt
|
||||
file_size=$(cat /tmp/deps.txt | wc -l)
|
||||
file_scan=1
|
||||
while [ ${file_scan} -le ${file_size} ] ; do
|
||||
library=$(cat /tmp/deps.txt | head -${file_scan} | tail -1)
|
||||
cp -rfv ${library} ${dir_build}/bin
|
||||
file_scan=$(expr ${file_scan} + 1)
|
||||
done
|
||||
echo "* Searching dependencies for FFprobe"
|
||||
ldd ${dir_build}/bin/ffprobe.exe | grep "/bin/" | cut -d ">" -f 2 | cut -d "(" -f 1 | tr -s " " > /tmp/deps.txt
|
||||
file_size=$(cat /tmp/deps.txt | wc -l)
|
||||
file_scan=1
|
||||
while [ ${file_scan} -le ${file_size} ] ; do
|
||||
library=$(cat /tmp/deps.txt | head -${file_scan} | tail -1)
|
||||
cp -rfv ${library} ${dir_build}/bin
|
||||
file_scan=$(expr ${file_scan} + 1)
|
||||
done
|
||||
strip --strip-all ${dir_build}/bin/*
|
||||
cp -rfv /usr/bin/cyggcc_s-*.dll ${dir_build}/bin/
|
||||
cp -rfv /usr/bin/cygwin1.dll ${dir_build}/bin/
|
||||
cp -rfv /usr/bin/cygz.dll ${dir_build}/bin/
|
||||
|
||||
# Create CMD scripts for FFmpeg and FFprobe
|
||||
echo "* Creating CMD scripts for FFmpeg and FFprobe"
|
||||
echo "@echo off" > ${dir_build}/ffmpeg.cmd
|
||||
echo "" >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set run_binary="%~d0%~p0\bin\ffmpeg.exe"' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffmpeg.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffmpeg.cmd
|
||||
echo '%run_binary% %FFmpegArgs%' >> ${dir_build}/ffmpeg.cmd
|
||||
echo "* Script ffmpeg.cmd created"
|
||||
echo "@echo off" > ${dir_build}/ffprobe.cmd
|
||||
echo "" >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set run_binary="%~d0%~p0\bin\ffprobe.exe"' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'for /L %%i in (0,1,8) do @shift' >> ${dir_build}/ffprobe.cmd
|
||||
echo 'set FFmpegArgs=%FFmpegArgs% %1 %2 %3 %4 %5 %6 %7 %8 %9' >> ${dir_build}/ffprobe.cmd
|
||||
echo '%run_binary% %FFmpegArgs%' >> ${dir_build}/ffprobe.cmd
|
||||
echo "* Script ffprobe.cmd created"
|
||||
|
||||
# Create package
|
||||
echo "* Creating package"
|
||||
cd ${dir_build}
|
||||
rm -rf lib
|
||||
rm -rf include
|
||||
zip ${name_folder}-win-64bit-build.zip -r *
|
||||
rm -rf ${dir_build_packages}/${name_folder}-win-64bit-build.zip
|
||||
mv ${name_folder}-win-64bit-build.zip ${dir_build_packages}
|
||||
echo ""
|
||||
echo "* Your build: ${dir_build_packages}/${name_folder}-win-64bit-build.zip"
|
||||
echo ""
|
||||
chmod 775 -R ${dir_build_packages}
|
||||
|
||||
|
@ -12,8 +12,8 @@ dir_build_libs="/opt/ffmpeg-builds/lib/linux32"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-4.4.1.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-4.4.1.tar.bz2@ffmpeg-4.4.1"
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# Build parameters
|
||||
ffmpeg_parameters="--prefix=${dir_build}/usr --enable-gpl --enable-nonfree --enable-version3 \
|
||||
@ -24,7 +24,7 @@ ffmpeg_parameters="--prefix=${dir_build}/usr --enable-gpl --enable-nonfree --ena
|
||||
--enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora \
|
||||
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 \
|
||||
--enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi \
|
||||
--enable-libwebp"
|
||||
--enable-libwebp --enable-libzimg"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
@ -52,7 +52,7 @@ libaom-dev libfribidi-dev libass-dev libvmatch-dev libfreetype-dev libmp3lame-de
|
||||
libopencore-amrnb-dev libopencore-amrwb-dev libjpeg-dev librubberband-dev libsoxr-dev \
|
||||
libspeex-dev libvorbis-dev libopus-dev libtheora-dev libvidstab-dev libvo-amrwbenc-dev \
|
||||
libvpx-dev libwebp-dev libx264-dev libx265-dev libxml2-dev libdav1d-dev libxvidcore-dev \
|
||||
libzvbi-dev nasm libogg-dev libwebp-dev zlib1g-dev
|
||||
libzvbi-dev nasm libogg-dev libwebp-dev zlib1g-dev libzimg-dev
|
||||
|
||||
# Download FFmpeg
|
||||
echo "* Building FFmpeg using system libraries"
|
||||
|
@ -24,8 +24,8 @@ dir_build_libs="/opt/ffmpeg-builds/lib/linux32"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-4.4.1.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-4.4.1.tar.bz2@ffmpeg-4.4.1"
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# Build parameters
|
||||
ffmpeg_pre_parameters="PKG_CONFIG_PATH=\"${dir_build_libs}/lib/pkgconfig\""
|
||||
@ -36,7 +36,7 @@ ffmpeg_parameters="--prefix=\"${dir_build}/usr\" --extra-cflags=\"-I${dir_build_
|
||||
--enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --disable-shared \
|
||||
--enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora \
|
||||
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 \
|
||||
--enable-libdav1d --enable-libxvid --enable-libfdk-aac"
|
||||
--enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libzimg"
|
||||
|
||||
# COMPILER VARIABLES
|
||||
C_COMPILER="gcc"
|
||||
@ -46,29 +46,29 @@ CXX_COMPILER="g++"
|
||||
lib_zlib="http://sourceforge.net/projects/libpng/files/zlib/1.2.11/zlib-1.2.11.tar.gz"
|
||||
lib_zlib_name="zlib-1.2.11.tar.gz@zlib-1.2.11"
|
||||
|
||||
lib_expat="https://github.com/libexpat/libexpat/releases/download/R_2_4_1/expat-2.4.1.tar.bz2"
|
||||
lib_expat_name="expat-2.4.1.tar.bz2@expat-2.4.1"
|
||||
lib_expat="https://github.com/libexpat/libexpat/releases/download/R_2_5_0/expat-2.5.0.tar.bz2"
|
||||
lib_expat_name="expat-2.5.0.tar.bz2@expat-2.5.0"
|
||||
|
||||
lib_fontconfig="https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.13.94.tar.gz"
|
||||
lib_fontconfig_name="fontconfig-2.13.94.tar.gz@fontconfig-2.13.94"
|
||||
lib_fontconfig="https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.14.2.tar.gz"
|
||||
lib_fontconfig_name="fontconfig-2.14.2.tar.gz@fontconfig-2.14.2"
|
||||
|
||||
lib_frei0r="https://files.dyne.org/frei0r/frei0r-plugins-1.7.0.tar.gz"
|
||||
lib_frei0r_name="frei0r-plugins-1.7.0.tar.gz@frei0r-plugins-1.7.0"
|
||||
lib_frei0r="https://files.dyne.org/frei0r/frei0r-plugins-1.8.0.tar.gz"
|
||||
lib_frei0r_name="frei0r-plugins-1.8.0.tar.gz@frei0r-plugins-1.8.0"
|
||||
|
||||
lib_openssl="https://www.openssl.org/source/openssl-1.1.1m.tar.gz"
|
||||
lib_openssl_name="openssl-1.1.1m.tar.gz@openssl-1.1.1m"
|
||||
lib_openssl="https://www.openssl.org/source/openssl-1.1.1t.tar.gz"
|
||||
lib_openssl_name="openssl-1.1.1t.tar.gz@openssl-1.1.1t"
|
||||
|
||||
lib_harfbuzz="https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.4.6.tar.bz2"
|
||||
lib_harfbuzz_name="harfbuzz-1.4.6.tar.bz2@harfbuzz-1.4.6"
|
||||
lib_harfbuzz="https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.4.8.tar.bz2"
|
||||
lib_harfbuzz_name="harfbuzz-1.4.8.tar.bz2@harfbuzz-1.4.8"
|
||||
|
||||
lib_fribidi="https://github.com/fribidi/fribidi/releases/download/v1.0.11/fribidi-1.0.11.tar.xz"
|
||||
lib_fribidi_name="fribidi-1.0.11.tar.xz@fribidi-1.0.11"
|
||||
lib_fribidi="https://github.com/fribidi/fribidi/releases/download/v1.0.12/fribidi-1.0.12.tar.xz"
|
||||
lib_fribidi_name="fribidi-1.0.12.tar.xz@fribidi-1.0.12"
|
||||
|
||||
lib_ass="https://github.com/libass/libass/releases/download/0.15.2/libass-0.15.2.tar.gz"
|
||||
lib_ass_name="libass-0.15.2.tar.gz@libass-0.15.2"
|
||||
lib_ass="https://github.com/libass/libass/releases/download/0.17.1/libass-0.17.1.tar.gz"
|
||||
lib_ass_name="libass-0.17.1.tar.gz@libass-0.17.1"
|
||||
|
||||
lib_freetype="https://download.savannah.gnu.org/releases/freetype/freetype-2.11.1.tar.gz"
|
||||
lib_freetype_name="freetype-2.11.1.tar.gz@freetype-2.11.1"
|
||||
lib_freetype="https://sourceforge.net/projects/freetype/files/freetype2/2.13.2/freetype-2.13.2.tar.gz"
|
||||
lib_freetype_name="freetype-2.13.2.tar.gz@freetype-2.13.2"
|
||||
|
||||
lib_mp3lame="https://sourceforge.net/projects/lame/files/lame/3.100/lame-3.100.tar.gz"
|
||||
lib_mp3lame_name="lame-3.100.tar.gz@lame-3.100"
|
||||
@ -76,8 +76,8 @@ lib_mp3lame_name="lame-3.100.tar.gz@lame-3.100"
|
||||
lib_fdkaac="https://sourceforge.net/projects/opencore-amr/files/fdk-aac/fdk-aac-2.0.2.tar.gz"
|
||||
lib_fdkaac_name="fdk-aac-2.0.2.tar.gz@fdk-aac-2.0.2"
|
||||
|
||||
lib_openjpeg="https://github.com/uclouvain/openjpeg/archive/refs/tags/v2.1.2.tar.gz"
|
||||
lib_openjpeg_name="v2.1.2.tar.gz@openjpeg-2.1.2"
|
||||
lib_openjpeg="https://github.com/uclouvain/openjpeg/archive/refs/tags/v2.5.0.tar.gz"
|
||||
lib_openjpeg_name="v2.5.0.tar.gz@openjpeg-2.5.0"
|
||||
|
||||
lib_soxr="https://sourceforge.net/projects/soxr/files/soxr-0.1.3-Source.tar.xz"
|
||||
lib_soxr_name="soxr-0.1.3-Source.tar.xz@soxr-0.1.3-Source"
|
||||
@ -85,6 +85,9 @@ lib_soxr_name="soxr-0.1.3-Source.tar.xz@soxr-0.1.3-Source"
|
||||
lib_speex="http://downloads.us.xiph.org/releases/speex/speex-1.2.0.tar.gz"
|
||||
lib_speex_name="speex-1.2.0.tar.gz@speex-1.2.0"
|
||||
|
||||
lib_ogg="https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.5.tar.gz"
|
||||
lib_ogg_name="libogg-1.3.5.tar.gz@libogg-1.3.5"
|
||||
|
||||
lib_vorbis="https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.gz"
|
||||
lib_vorbis_name="libvorbis-1.3.7.tar.gz@libvorbis-1.3.7"
|
||||
|
||||
@ -97,17 +100,17 @@ lib_theora_name="libtheora-1.1.1.tar.bz2@libtheora-1.1.1"
|
||||
lib_vistab="https://github.com/georgmartius/vid.stab/archive/refs/tags/v1.1.0.tar.gz"
|
||||
lib_vistab_name="v1.1.0.tar.gz@vid.stab-1.1.0"
|
||||
|
||||
lib_vpx="https://github.com/webmproject/libvpx/archive/refs/tags/v1.11.0.tar.gz"
|
||||
lib_vpx_name="v1.11.0.tar.gz@libvpx-1.11.0"
|
||||
lib_vpx="https://github.com/webmproject/libvpx/archive/refs/tags/v1.13.0.tar.gz"
|
||||
lib_vpx_name="v1.13.0.tar.gz@libvpx-1.13.0"
|
||||
|
||||
lib_webp="https://github.com/webmproject/libwebp/archive/refs/tags/v1.2.1.tar.gz"
|
||||
lib_webp_name="v1.2.1.tar.gz@libwebp-1.2.1"
|
||||
lib_webp="https://github.com/webmproject/libwebp/archive/refs/tags/v1.3.0.tar.gz"
|
||||
lib_webp_name="v1.3.0.tar.gz@libwebp-1.3.0"
|
||||
|
||||
lib_x264="https://code.videolan.org/videolan/x264"
|
||||
lib_x264_name="x264"
|
||||
|
||||
lib_x265="http://download.openpkg.org/components/cache/x265/x265_3.4.tar.gz"
|
||||
lib_x265_name="x265_3.4.tar.gz@x265_3.4"
|
||||
lib_x265="https://bitbucket.org/multicoreware/x265_git/downloads/x265_3.5.tar.gz"
|
||||
lib_x265_name="x265_3.5.tar.gz@x265_3.5"
|
||||
|
||||
lib_dav1d="https://code.videolan.org/videolan/dav1d.git"
|
||||
lib_dav1d_name="dav1d"
|
||||
@ -118,6 +121,9 @@ lib_xvid_name="xvidcore-1.3.7.tar.gz@xvidcore"
|
||||
lib_aom="https://aomedia.googlesource.com/aom"
|
||||
lib_aom_name="aom"
|
||||
|
||||
lib_svtav1="https://gitlab.com/AOMediaCodec/SVT-AV1"
|
||||
lib_svtav1_name="SVT-AV1"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
administrador=$?
|
||||
@ -139,7 +145,7 @@ mkdir -p ${dir_build_packages}
|
||||
|
||||
# Build zlib
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/zlib.pc ] ; then
|
||||
echo "* Zlib was compiled previosly"
|
||||
echo "* Zlib was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -155,10 +161,12 @@ fi
|
||||
|
||||
# Build expat
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/expat.pc ] ; then
|
||||
echo "* Expat was compiled previosly"
|
||||
echo "* Expat was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_expat_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_expat_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_expat}"
|
||||
@ -171,7 +179,7 @@ fi
|
||||
|
||||
# Build frei0r
|
||||
if [ -d ${dir_build_libs}/lib/frei0r-1 ] ; then
|
||||
echo "* Frei0r was compiled previosly"
|
||||
echo "* Frei0r was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -182,6 +190,8 @@ else
|
||||
wget -c "${lib_frei0r}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
chmod +x autogen.sh
|
||||
./autogen.sh
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix=${dir_build_libs} --enable-static
|
||||
make
|
||||
make install
|
||||
@ -189,7 +199,7 @@ fi
|
||||
|
||||
# Build OpenSSL
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libssl.pc ] ; then
|
||||
echo "* OpenSSL was compiled previosly"
|
||||
echo "* OpenSSL was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -207,7 +217,7 @@ fi
|
||||
|
||||
# Build Harfbuzz
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/harfbuzz.pc ] ; then
|
||||
echo "* Harfbuzz was compiled previosly"
|
||||
echo "* Harfbuzz was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -225,7 +235,7 @@ fi
|
||||
|
||||
# Build fribidi
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fribidi.pc ] ; then
|
||||
echo "* Fribidi was compiled previosly"
|
||||
echo "* Fribidi was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -243,7 +253,7 @@ fi
|
||||
|
||||
# Build freetype
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/freetype2.pc ] ; then
|
||||
echo "* Freetype2 was compiled previosly"
|
||||
echo "* Freetype2 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -261,7 +271,7 @@ fi
|
||||
|
||||
# Build fontconfig
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fontconfig.pc ] ; then
|
||||
echo "* Fontconfig was compiled previosly"
|
||||
echo "* Fontconfig was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -279,7 +289,7 @@ fi
|
||||
|
||||
# Build ass
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libass.pc ] ; then
|
||||
echo "* Ass was compiled previosly"
|
||||
echo "* Ass was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -297,7 +307,7 @@ fi
|
||||
|
||||
# Build mp3lame
|
||||
if [ -f ${dir_build_libs}/lib/libmp3lame.a ] ; then
|
||||
echo "* MP3Lame was compiled previosly"
|
||||
echo "* MP3Lame was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -315,7 +325,7 @@ fi
|
||||
|
||||
# Build fdk-aac
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fdk-aac.pc ] ; then
|
||||
echo "* FDK-AAC was compiled previosly"
|
||||
echo "* FDK-AAC was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -333,7 +343,7 @@ fi
|
||||
|
||||
# Build openjpeg
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libopenjp2.pc ] ; then
|
||||
echo "* OpenJPEG was compiled previosly"
|
||||
echo "* OpenJPEG was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -351,7 +361,7 @@ fi
|
||||
|
||||
# Build soxr
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/soxr.pc ] ; then
|
||||
echo "* Soxr was compiled previosly"
|
||||
echo "* Soxr was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -369,7 +379,7 @@ fi
|
||||
|
||||
# Build speex
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/speex.pc ] ; then
|
||||
echo "* Speex was compiled previosly"
|
||||
echo "* Speex was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -385,9 +395,27 @@ else
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build ogg
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/ogg.pc ] ; then
|
||||
echo "* Ogg was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_ogg_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_ogg_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_ogg}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix=${dir_build_libs} --enable-static --disable-shared
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build vorbis
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vorbis.pc ] ; then
|
||||
echo "* Vorbis was compiled previosly"
|
||||
echo "* Vorbis was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -405,7 +433,7 @@ fi
|
||||
|
||||
# Build opus
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/opus.pc ] ; then
|
||||
echo "* Opus was compiled previosly"
|
||||
echo "* Opus was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -423,7 +451,7 @@ fi
|
||||
|
||||
# Build theora
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/theora.pc ] ; then
|
||||
echo "* Theora was compiled previosly"
|
||||
echo "* Theora was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -441,7 +469,7 @@ fi
|
||||
|
||||
# Build vid.stab
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vidstab.pc ] ; then
|
||||
echo "* Vid.Stab was compiled previosly"
|
||||
echo "* Vid.Stab was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -459,7 +487,7 @@ fi
|
||||
|
||||
# Build vpx
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vpx.pc ] ; then
|
||||
echo "* Vpx was compiled previosly"
|
||||
echo "* Vpx was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -477,7 +505,7 @@ fi
|
||||
|
||||
# Build webp
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libwebp.pc ] ; then
|
||||
echo "* Webp was compiled previosly"
|
||||
echo "* Webp was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -496,7 +524,7 @@ fi
|
||||
|
||||
# Build x264
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/x264.pc ] ; then
|
||||
echo "* x264 was compiled previosly"
|
||||
echo "* x264 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -513,7 +541,7 @@ fi
|
||||
|
||||
# Build x265
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/x265.pc ] ; then
|
||||
echo "* x265 was compiled previosly"
|
||||
echo "* x265 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -533,7 +561,7 @@ fi
|
||||
|
||||
# Build dav1d
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/dav1d.pc ] ; then
|
||||
echo "* Dav1d was compiled previosly"
|
||||
echo "* Dav1d was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -554,7 +582,7 @@ fi
|
||||
|
||||
# Build xvid
|
||||
if [ -f ${dir_build_libs}/lib/libxvidcore.a ] ; then
|
||||
echo "* Xvid was compiled previosly"
|
||||
echo "* Xvid was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -572,7 +600,7 @@ fi
|
||||
|
||||
# Build aom
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/aom.pc ] ; then
|
||||
echo "* Aom was compiled previosly"
|
||||
echo "* Aom was compiled previously"
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
sleep 1
|
||||
@ -585,11 +613,35 @@ else
|
||||
git clone ${lib_aom}
|
||||
cd "${name_folder}"
|
||||
rm -rf CMakeCache.txt CMakeFiles
|
||||
mkdir -p build
|
||||
cd build
|
||||
mkdir -p aom_build
|
||||
cd aom_build
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}" cmake -DCMAKE_INSTALL_PREFIX="${dir_build_libs}" ..
|
||||
make
|
||||
make install
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
|
||||
# Build SVT-AV1
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/SvtAv1Dec.pc ] ; then
|
||||
echo "* SVT-AV1 was compiled previously"
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_folder=$(echo ${lib_svtav1_name})
|
||||
name_package=$(echo ${lib_svtav1})
|
||||
git clone ${lib_svtav1}
|
||||
cd "${name_folder}/Build/linux"
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}"
|
||||
./build.sh --prefix=${dir_build_libs} --static
|
||||
cd Release
|
||||
make install
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
@ -603,7 +655,7 @@ wget -c ${ffmpeg_package}
|
||||
tar jxvf ${name_package}
|
||||
cd ${name_folder}
|
||||
chmod +x configure
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-ffplay --enable-pic
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libsvtav1 --enable-ffplay --enable-pic --enable-libzimg
|
||||
build_error=$?
|
||||
if [ ${build_error} -eq 0 ] ; then
|
||||
echo ""
|
||||
@ -617,7 +669,7 @@ else
|
||||
echo " - vidstab"
|
||||
echo ""
|
||||
sleep 5
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --disable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-ffplay --enable-pic
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --disable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libsvtav1 --enable-ffplay --enable-pic --enable-libzimg
|
||||
fi
|
||||
sleep 2
|
||||
make
|
||||
|
@ -12,8 +12,8 @@ dir_build_libs="/opt/ffmpeg-builds/lib/linux64"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-4.4.1.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-4.4.1.tar.bz2@ffmpeg-4.4.1"
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# Build parameters
|
||||
ffmpeg_parameters="--prefix=${dir_build}/usr --enable-gpl --enable-nonfree --enable-version3 \
|
||||
@ -24,7 +24,7 @@ ffmpeg_parameters="--prefix=${dir_build}/usr --enable-gpl --enable-nonfree --ena
|
||||
--enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora \
|
||||
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 \
|
||||
--enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi \
|
||||
--enable-libwebp"
|
||||
--enable-libwebp --enable-libzimg"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
@ -52,7 +52,7 @@ libaom-dev libfribidi-dev libass-dev libvmatch-dev libfreetype-dev libmp3lame-de
|
||||
libopencore-amrnb-dev libopencore-amrwb-dev libjpeg-dev librubberband-dev libsoxr-dev \
|
||||
libspeex-dev libvorbis-dev libopus-dev libtheora-dev libvidstab-dev libvo-amrwbenc-dev \
|
||||
libvpx-dev libwebp-dev libx264-dev libx265-dev libxml2-dev libdav1d-dev libxvidcore-dev \
|
||||
libzvbi-dev nasm libogg-dev libwebp-dev zlib1g-dev
|
||||
libzvbi-dev nasm libogg-dev libwebp-dev zlib1g-dev libzimg-dev
|
||||
|
||||
# Download FFmpeg
|
||||
echo "* Building FFmpeg using system libraries"
|
||||
|
@ -24,8 +24,8 @@ dir_build_libs="/opt/ffmpeg-builds/lib/linux64"
|
||||
dir_build_packages="/opt/ffmpeg-builds/packages"
|
||||
|
||||
# FFmpeg version
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-4.4.1.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-4.4.1.tar.bz2@ffmpeg-4.4.1"
|
||||
ffmpeg_package="https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.bz2"
|
||||
ffmpeg_package_name="ffmpeg-7.0.2.tar.bz2@ffmpeg-7.0.2"
|
||||
|
||||
# Build parameters
|
||||
ffmpeg_pre_parameters="PKG_CONFIG_PATH=\"${dir_build_libs}/lib/pkgconfig\""
|
||||
@ -36,7 +36,7 @@ ffmpeg_parameters="--prefix=\"${dir_build}/usr\" --extra-cflags=\"-I${dir_build_
|
||||
--enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --disable-shared \
|
||||
--enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora \
|
||||
--enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 \
|
||||
--enable-libdav1d --enable-libxvid --enable-libfdk-aac"
|
||||
--enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libzimg"
|
||||
|
||||
# COMPILER VARIABLES
|
||||
C_COMPILER="gcc"
|
||||
@ -46,29 +46,29 @@ CXX_COMPILER="g++"
|
||||
lib_zlib="http://sourceforge.net/projects/libpng/files/zlib/1.2.11/zlib-1.2.11.tar.gz"
|
||||
lib_zlib_name="zlib-1.2.11.tar.gz@zlib-1.2.11"
|
||||
|
||||
lib_expat="https://github.com/libexpat/libexpat/releases/download/R_2_4_1/expat-2.4.1.tar.bz2"
|
||||
lib_expat_name="expat-2.4.1.tar.bz2@expat-2.4.1"
|
||||
lib_expat="https://github.com/libexpat/libexpat/releases/download/R_2_5_0/expat-2.5.0.tar.bz2"
|
||||
lib_expat_name="expat-2.5.0.tar.bz2@expat-2.5.0"
|
||||
|
||||
lib_fontconfig="https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.13.94.tar.gz"
|
||||
lib_fontconfig_name="fontconfig-2.13.94.tar.gz@fontconfig-2.13.94"
|
||||
lib_fontconfig="https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.14.2.tar.gz"
|
||||
lib_fontconfig_name="fontconfig-2.14.2.tar.gz@fontconfig-2.14.2"
|
||||
|
||||
lib_frei0r="https://files.dyne.org/frei0r/frei0r-plugins-1.7.0.tar.gz"
|
||||
lib_frei0r_name="frei0r-plugins-1.7.0.tar.gz@frei0r-plugins-1.7.0"
|
||||
lib_frei0r="https://files.dyne.org/frei0r/frei0r-plugins-1.8.0.tar.gz"
|
||||
lib_frei0r_name="frei0r-plugins-1.8.0.tar.gz@frei0r-plugins-1.8.0"
|
||||
|
||||
lib_openssl="https://www.openssl.org/source/openssl-1.1.1m.tar.gz"
|
||||
lib_openssl_name="openssl-1.1.1m.tar.gz@openssl-1.1.1m"
|
||||
lib_openssl="https://www.openssl.org/source/openssl-1.1.1t.tar.gz"
|
||||
lib_openssl_name="openssl-1.1.1t.tar.gz@openssl-1.1.1t"
|
||||
|
||||
lib_harfbuzz="https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.4.6.tar.bz2"
|
||||
lib_harfbuzz_name="harfbuzz-1.4.6.tar.bz2@harfbuzz-1.4.6"
|
||||
lib_harfbuzz="https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.4.8.tar.bz2"
|
||||
lib_harfbuzz_name="harfbuzz-1.4.8.tar.bz2@harfbuzz-1.4.8"
|
||||
|
||||
lib_fribidi="https://github.com/fribidi/fribidi/releases/download/v1.0.11/fribidi-1.0.11.tar.xz"
|
||||
lib_fribidi_name="fribidi-1.0.11.tar.xz@fribidi-1.0.11"
|
||||
lib_fribidi="https://github.com/fribidi/fribidi/releases/download/v1.0.12/fribidi-1.0.12.tar.xz"
|
||||
lib_fribidi_name="fribidi-1.0.12.tar.xz@fribidi-1.0.12"
|
||||
|
||||
lib_ass="https://github.com/libass/libass/releases/download/0.15.2/libass-0.15.2.tar.gz"
|
||||
lib_ass_name="libass-0.15.2.tar.gz@libass-0.15.2"
|
||||
lib_ass="https://github.com/libass/libass/releases/download/0.17.1/libass-0.17.1.tar.gz"
|
||||
lib_ass_name="libass-0.17.1.tar.gz@libass-0.17.1"
|
||||
|
||||
lib_freetype="https://download.savannah.gnu.org/releases/freetype/freetype-2.11.1.tar.gz"
|
||||
lib_freetype_name="freetype-2.11.1.tar.gz@freetype-2.11.1"
|
||||
lib_freetype="https://sourceforge.net/projects/freetype/files/freetype2/2.13.2/freetype-2.13.2.tar.gz"
|
||||
lib_freetype_name="freetype-2.13.2.tar.gz@freetype-2.13.2"
|
||||
|
||||
lib_mp3lame="https://sourceforge.net/projects/lame/files/lame/3.100/lame-3.100.tar.gz"
|
||||
lib_mp3lame_name="lame-3.100.tar.gz@lame-3.100"
|
||||
@ -76,8 +76,8 @@ lib_mp3lame_name="lame-3.100.tar.gz@lame-3.100"
|
||||
lib_fdkaac="https://sourceforge.net/projects/opencore-amr/files/fdk-aac/fdk-aac-2.0.2.tar.gz"
|
||||
lib_fdkaac_name="fdk-aac-2.0.2.tar.gz@fdk-aac-2.0.2"
|
||||
|
||||
lib_openjpeg="https://github.com/uclouvain/openjpeg/archive/refs/tags/v2.1.2.tar.gz"
|
||||
lib_openjpeg_name="v2.1.2.tar.gz@openjpeg-2.1.2"
|
||||
lib_openjpeg="https://github.com/uclouvain/openjpeg/archive/refs/tags/v2.5.0.tar.gz"
|
||||
lib_openjpeg_name="v2.5.0.tar.gz@openjpeg-2.5.0"
|
||||
|
||||
lib_soxr="https://sourceforge.net/projects/soxr/files/soxr-0.1.3-Source.tar.xz"
|
||||
lib_soxr_name="soxr-0.1.3-Source.tar.xz@soxr-0.1.3-Source"
|
||||
@ -85,6 +85,9 @@ lib_soxr_name="soxr-0.1.3-Source.tar.xz@soxr-0.1.3-Source"
|
||||
lib_speex="http://downloads.us.xiph.org/releases/speex/speex-1.2.0.tar.gz"
|
||||
lib_speex_name="speex-1.2.0.tar.gz@speex-1.2.0"
|
||||
|
||||
lib_ogg="https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.5.tar.gz"
|
||||
lib_ogg_name="libogg-1.3.5.tar.gz@libogg-1.3.5"
|
||||
|
||||
lib_vorbis="https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.gz"
|
||||
lib_vorbis_name="libvorbis-1.3.7.tar.gz@libvorbis-1.3.7"
|
||||
|
||||
@ -97,17 +100,17 @@ lib_theora_name="libtheora-1.1.1.tar.bz2@libtheora-1.1.1"
|
||||
lib_vistab="https://github.com/georgmartius/vid.stab/archive/refs/tags/v1.1.0.tar.gz"
|
||||
lib_vistab_name="v1.1.0.tar.gz@vid.stab-1.1.0"
|
||||
|
||||
lib_vpx="https://github.com/webmproject/libvpx/archive/refs/tags/v1.11.0.tar.gz"
|
||||
lib_vpx_name="v1.11.0.tar.gz@libvpx-1.11.0"
|
||||
lib_vpx="https://github.com/webmproject/libvpx/archive/refs/tags/v1.13.0.tar.gz"
|
||||
lib_vpx_name="v1.13.0.tar.gz@libvpx-1.13.0"
|
||||
|
||||
lib_webp="https://github.com/webmproject/libwebp/archive/refs/tags/v1.2.1.tar.gz"
|
||||
lib_webp_name="v1.2.1.tar.gz@libwebp-1.2.1"
|
||||
lib_webp="https://github.com/webmproject/libwebp/archive/refs/tags/v1.3.0.tar.gz"
|
||||
lib_webp_name="v1.3.0.tar.gz@libwebp-1.3.0"
|
||||
|
||||
lib_x264="https://code.videolan.org/videolan/x264"
|
||||
lib_x264_name="x264"
|
||||
|
||||
lib_x265="http://download.openpkg.org/components/cache/x265/x265_3.4.tar.gz"
|
||||
lib_x265_name="x265_3.4.tar.gz@x265_3.4"
|
||||
lib_x265="https://bitbucket.org/multicoreware/x265_git/downloads/x265_3.5.tar.gz"
|
||||
lib_x265_name="x265_3.5.tar.gz@x265_3.5"
|
||||
|
||||
lib_dav1d="https://code.videolan.org/videolan/dav1d.git"
|
||||
lib_dav1d_name="dav1d"
|
||||
@ -118,6 +121,9 @@ lib_xvid_name="xvidcore-1.3.7.tar.gz@xvidcore"
|
||||
lib_aom="https://aomedia.googlesource.com/aom"
|
||||
lib_aom_name="aom"
|
||||
|
||||
lib_svtav1="https://gitlab.com/AOMediaCodec/SVT-AV1"
|
||||
lib_svtav1_name="SVT-AV1"
|
||||
|
||||
# Check root permission
|
||||
mkdir -p /etc/root &> /dev/null
|
||||
administrador=$?
|
||||
@ -139,7 +145,7 @@ mkdir -p ${dir_build_packages}
|
||||
|
||||
# Build zlib
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/zlib.pc ] ; then
|
||||
echo "* Zlib was compiled previosly"
|
||||
echo "* Zlib was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -155,10 +161,12 @@ fi
|
||||
|
||||
# Build expat
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/expat.pc ] ; then
|
||||
echo "* Expat was compiled previosly"
|
||||
echo "* Expat was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_expat_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_expat_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_expat}"
|
||||
@ -171,7 +179,7 @@ fi
|
||||
|
||||
# Build frei0r
|
||||
if [ -d ${dir_build_libs}/lib/frei0r-1 ] ; then
|
||||
echo "* Frei0r was compiled previosly"
|
||||
echo "* Frei0r was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -182,6 +190,8 @@ else
|
||||
wget -c "${lib_frei0r}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
chmod +x autogen.sh
|
||||
./autogen.sh
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix=${dir_build_libs} --enable-static
|
||||
make
|
||||
make install
|
||||
@ -189,7 +199,7 @@ fi
|
||||
|
||||
# Build OpenSSL
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libssl.pc ] ; then
|
||||
echo "* OpenSSL was compiled previosly"
|
||||
echo "* OpenSSL was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -207,7 +217,7 @@ fi
|
||||
|
||||
# Build Harfbuzz
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/harfbuzz.pc ] ; then
|
||||
echo "* Harfbuzz was compiled previosly"
|
||||
echo "* Harfbuzz was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -225,7 +235,7 @@ fi
|
||||
|
||||
# Build fribidi
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fribidi.pc ] ; then
|
||||
echo "* Fribidi was compiled previosly"
|
||||
echo "* Fribidi was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -243,7 +253,7 @@ fi
|
||||
|
||||
# Build freetype
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/freetype2.pc ] ; then
|
||||
echo "* Freetype2 was compiled previosly"
|
||||
echo "* Freetype2 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -261,7 +271,7 @@ fi
|
||||
|
||||
# Build fontconfig
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fontconfig.pc ] ; then
|
||||
echo "* Fontconfig was compiled previosly"
|
||||
echo "* Fontconfig was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -279,7 +289,7 @@ fi
|
||||
|
||||
# Build ass
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libass.pc ] ; then
|
||||
echo "* Ass was compiled previosly"
|
||||
echo "* Ass was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -297,7 +307,7 @@ fi
|
||||
|
||||
# Build mp3lame
|
||||
if [ -f ${dir_build_libs}/lib/libmp3lame.a ] ; then
|
||||
echo "* MP3Lame was compiled previosly"
|
||||
echo "* MP3Lame was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -315,7 +325,7 @@ fi
|
||||
|
||||
# Build fdk-aac
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/fdk-aac.pc ] ; then
|
||||
echo "* FDK-AAC was compiled previosly"
|
||||
echo "* FDK-AAC was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -333,7 +343,7 @@ fi
|
||||
|
||||
# Build openjpeg
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libopenjp2.pc ] ; then
|
||||
echo "* OpenJPEG was compiled previosly"
|
||||
echo "* OpenJPEG was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -351,7 +361,7 @@ fi
|
||||
|
||||
# Build soxr
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/soxr.pc ] ; then
|
||||
echo "* Soxr was compiled previosly"
|
||||
echo "* Soxr was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -369,7 +379,7 @@ fi
|
||||
|
||||
# Build speex
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/speex.pc ] ; then
|
||||
echo "* Speex was compiled previosly"
|
||||
echo "* Speex was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -385,9 +395,27 @@ else
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build ogg
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/ogg.pc ] ; then
|
||||
echo "* Ogg was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_package=$(echo ${lib_ogg_name} | cut -d "@" -f 1)
|
||||
name_folder=$(echo ${lib_ogg_name} | cut -d "@" -f 2)
|
||||
wget -c "${lib_ogg}"
|
||||
tar zxvf ${name_package}
|
||||
cd "${name_folder}"
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix=${dir_build_libs} --enable-static --disable-shared
|
||||
make
|
||||
make install
|
||||
fi
|
||||
|
||||
# Build vorbis
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vorbis.pc ] ; then
|
||||
echo "* Vorbis was compiled previosly"
|
||||
echo "* Ogg was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -405,7 +433,7 @@ fi
|
||||
|
||||
# Build opus
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/opus.pc ] ; then
|
||||
echo "* Opus was compiled previosly"
|
||||
echo "* Opus was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -423,7 +451,7 @@ fi
|
||||
|
||||
# Build theora
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/theora.pc ] ; then
|
||||
echo "* Theora was compiled previosly"
|
||||
echo "* Theora was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -441,7 +469,7 @@ fi
|
||||
|
||||
# Build vid.stab
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vidstab.pc ] ; then
|
||||
echo "* Vid.Stab was compiled previosly"
|
||||
echo "* Vid.Stab was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -459,7 +487,7 @@ fi
|
||||
|
||||
# Build vpx
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/vpx.pc ] ; then
|
||||
echo "* Vpx was compiled previosly"
|
||||
echo "* Vpx was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -477,7 +505,7 @@ fi
|
||||
|
||||
# Build webp
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/libwebp.pc ] ; then
|
||||
echo "* Webp was compiled previosly"
|
||||
echo "* Webp was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -496,7 +524,7 @@ fi
|
||||
|
||||
# Build x264
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/x264.pc ] ; then
|
||||
echo "* x264 was compiled previosly"
|
||||
echo "* x264 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -513,7 +541,7 @@ fi
|
||||
|
||||
# Build x265
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/x265.pc ] ; then
|
||||
echo "* x265 was compiled previosly"
|
||||
echo "* x265 was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -533,7 +561,7 @@ fi
|
||||
|
||||
# Build dav1d
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/dav1d.pc ] ; then
|
||||
echo "* Dav1d was compiled previosly"
|
||||
echo "* Dav1d was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -554,7 +582,7 @@ fi
|
||||
|
||||
# Build xvid
|
||||
if [ -f ${dir_build_libs}/lib/libxvidcore.a ] ; then
|
||||
echo "* Xvid was compiled previosly"
|
||||
echo "* Xvid was compiled previously"
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
@ -572,7 +600,7 @@ fi
|
||||
|
||||
# Build aom
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/aom.pc ] ; then
|
||||
echo "* Aom was compiled previosly"
|
||||
echo "* Aom was compiled previously"
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
sleep 1
|
||||
@ -585,11 +613,35 @@ else
|
||||
git clone ${lib_aom}
|
||||
cd "${name_folder}"
|
||||
rm -rf CMakeCache.txt CMakeFiles
|
||||
mkdir -p build
|
||||
cd build
|
||||
mkdir -p aom_build
|
||||
cd aom_build
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}" cmake -DCMAKE_INSTALL_PREFIX="${dir_build_libs}" ..
|
||||
make
|
||||
make install
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
|
||||
# Build SVT-AV1
|
||||
if [ -f ${dir_build_libs}/lib/pkgconfig/SvtAv1Dec.pc ] ; then
|
||||
echo "* SVT-AV1 was compiled previously"
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
sleep 1
|
||||
else
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
name_folder=$(echo ${lib_svtav1_name})
|
||||
name_package=$(echo ${lib_svtav1})
|
||||
git clone ${lib_svtav1}
|
||||
cd "${name_folder}/Build/linux"
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig/ LD_LIBRARY_PATH=${dir_build_libs}/lib/ CC="${C_COMPILER}" CXX="${CXX_COMPILER}"
|
||||
./build.sh --prefix=${dir_build_libs} --static
|
||||
cd Release
|
||||
make install
|
||||
cd ${dir_build_libs}
|
||||
rm -rfv ${name_package}
|
||||
rm -rfv ${name_folder}
|
||||
fi
|
||||
@ -603,7 +655,7 @@ wget -c ${ffmpeg_package}
|
||||
tar jxvf ${name_package}
|
||||
cd ${name_folder}
|
||||
chmod +x configure
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-ffplay --enable-pic
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libsvtav1 --enable-ffplay --enable-pic --enable-libzimg
|
||||
build_error=$?
|
||||
if [ ${build_error} -eq 0 ] ; then
|
||||
echo ""
|
||||
@ -617,7 +669,7 @@ else
|
||||
echo " - vidstab"
|
||||
echo ""
|
||||
sleep 5
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --disable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-ffplay --enable-pic
|
||||
PKG_CONFIG_PATH=${dir_build_libs}/lib/pkgconfig LD_LIBRARY_PATH=${dir_build_libs}/lib CC="${C_COMPILER}" CXX="${CXX_COMPILER}" ./configure --prefix="${dir_build}/usr" --extra-ldexeflags="-static" --pkg-config-flags="--static" --extra-cflags="-I${dir_build_libs}/include" --extra-ldflags="-L${dir_build_libs}/lib" --extra-libs="-lpthread -lm -lz" --extra-ldexeflags="-static" --enable-gpl --enable-nonfree --enable-version3 --disable-debug --disable-indev=sndio --disable-outdev=sndio --enable-fontconfig --enable-frei0r --enable-openssl --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --disable-libvidstab --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libxvid --enable-libfdk-aac --enable-libsvtav1 --enable-ffplay --enable-pic --enable-libzimg
|
||||
fi
|
||||
sleep 2
|
||||
make
|
||||
|
Loading…
x
Reference in New Issue
Block a user