markus-perl / ffmpeg-build-script Goto Github PK
View Code? Open in Web Editor NEWThe FFmpeg build script provides an easy way to build a static FFmpeg on OSX and Linux with non-free codecs included.
License: MIT License
The FFmpeg build script provides an easy way to build a static FFmpeg on OSX and Linux with non-free codecs included.
License: MIT License
https://travis-ci.org/github/markus-perl/ffmpeg-build-script/jobs/734698188
Apparently, travis.org has a maximum run time of 50 minutes on MacOS, so it looks like I'll have to move to travis.com.
Or you may want to consider using github actions (I'm currently able to verify that I'm working with Github Actions).
(I will be sending you a PR as well.)
https://github.com/AkashiSN/ffmpeg-build-script/actions/runs/300161602
The SVT-AV1 encoder is in some ways better than the reference AV1 encoder (libaom). It has much better multithreading, so it's not a PITA to use all your CPU cores for AV1 encoding.
I've been building from git according to the Debian/Ubuntu compilation guide for a few months and the build process hasn't broken so far.
Hi @markus-perl ,
Like the title, I want to use ffplay to test video in host os, even I removed --disable-ffplay.
Do you have any solution to fix it.
Thank you for your time.
MY OS: Ubuntu 20.04
https://bitbucket.org/multicoreware/x265/ this url is break.
may be it can be changed to https://github.com/videolan/x265
The script exit on building SRT
I did a common install on Ubuntu Focal Fossa.
building srt
=======================
Downloading https://github.com/Haivision/srt/archive/v1.4.1.tar.gz
... Done
$ ./configure --prefix=/root/ffmpeg-build-script/workspace --disable-shared --enable-static
./build-ffmpeg: ./configure: /usr/bin/tclsh: bad interpreter: No such file or directory
Failed to Execute ./configure --prefix=/root/ffmpeg-build-script/workspace --disable-shared --enable-static
I've tried to cleanup then try again but the same issue occured.
What's wrong ? Thanks
Thank you for your awesome build script!
Tried to patch your script to be able to build ffmpeg with 10.9 target with no success.
Tried specifying
VERSION=0.7
CWD=$(pwd)
PACKAGES="$CWD/packages"
WORKSPACE="$CWD/workspace"
CC=clang
LDFLAGS="-L${WORKSPACE}/lib -lm"
CFLAGS="-I${WORKSPACE}/include -mmacosx-version-min=10.9"
PKG_CONFIG_PATH="${WORKSPACE}/lib/pkgconfig"
export MACOS_DEPLOYMENT_TARGET=10.9
But otool still reports current deployment target:
$ otool -l ffmpeg | grep -A 3 LC_VERSION_MIN_MACOSX
cmd LC_VERSION_MIN_MACOSX
cmdsize 16
version 10.11
sdk 10.11
What else can be done?
Hi,
The build on my MBP M1 with MacOS 11.1 fails, due to "undefined symbols". Did I do something wrong?
Using 8 make jobs simultaneously.
Downloading https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz as pkg-config-0.29.2.tar.gz
... Done
Extracted pkg-config-0.29.2.tar.gz
$ ./configure --silent --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --with-pc-path=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace/lib/pkgconfig --with-internal-glib
$ make -j 8
$ make install
Downloading https://lv2plug.in/spec/lv2-1.18.0.tar.bz2 as lv2-1.18.0.tar.bz2
... Done
Extracted lv2-1.18.0.tar.bz2
$ ./waf configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --lv2-user
$ ./waf
$ ./waf install
Downloading https://gitlab.com/drobilla/autowaf/-/archive/cc37724b9bfa889baebd8cb10f38b8c7cab83e37/autowaf-cc37724b9bfa889baebd8cb10f38b8c7cab83e37.tar.gz as autowaf.tar.gz
... Done
Extracted autowaf.tar.gz
Downloading https://gitlab.com/drobilla/serd/-/archive/v0.30.6/serd-v0.30.6.tar.gz as serd-v0.30.6.tar.gz
... Done
Extracted serd-v0.30.6.tar.gz
$ cp -r /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Build.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/COPYING /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ConfigSet.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Configure.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Context.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Errors.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Logs.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Node.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Options.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/README.md /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Runner.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Scripting.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Task.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/TaskGen.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Tools /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Utils.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/init.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ansiterm.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/extras /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/fixpy2.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/processor.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/waf /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/serd-v0.30.6/waflib/
$ ./waf configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --static --no-shared --no-posix
$ ./waf
$ ./waf install
Downloading https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz as pcre-8.44.tar.gz
... Done
Extracted pcre-8.44.tar.gz
$ ./configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --disable-shared --enable-static
$ make -j 8
$ make install
Downloading https://gitlab.com/drobilla/sord/-/archive/v0.16.6/sord-v0.16.6.tar.gz as sord-v0.16.6.tar.gz
... Done
Extracted sord-v0.16.6.tar.gz
$ cp -r /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Build.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/COPYING /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ConfigSet.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Configure.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Context.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Errors.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Logs.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Node.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Options.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/README.md /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Runner.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Scripting.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Task.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/TaskGen.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Tools /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Utils.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/init.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ansiterm.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/extras /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/fixpy2.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/processor.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/waf /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/sord-v0.16.6/waflib/
$ ./waf configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace CFLAGS=-I/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace/include --static --no-shared --no-utils
$ ./waf CFLAGS=-I/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace/include
$ ./waf install
Downloading https://gitlab.com/lv2/sratom/-/archive/v0.6.6/sratom-v0.6.6.tar.gz as sratom-v0.6.6.tar.gz
... Done
Extracted sratom-v0.6.6.tar.gz
$ cp -r /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Build.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/COPYING /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ConfigSet.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Configure.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Context.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Errors.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Logs.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Node.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Options.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/README.md /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Runner.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Scripting.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Task.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/TaskGen.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Tools /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Utils.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/init.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ansiterm.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/extras /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/fixpy2.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/processor.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/waf /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/sratom-v0.6.6/waflib/
$ ./waf configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --static --no-shared
$ ./waf
$ ./waf install
Downloading https://gitlab.com/lv2/lilv/-/archive/v0.24.10/lilv-v0.24.10.tar.gz as lilv-v0.24.10.tar.gz
... Done
Extracted lilv-v0.24.10.tar.gz
$ cp -r /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Build.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/COPYING /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ConfigSet.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Configure.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Context.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Errors.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Logs.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Node.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Options.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/README.md /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Runner.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Scripting.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Task.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/TaskGen.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Tools /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/Utils.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/init.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/ansiterm.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/extras /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/fixpy2.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/processor.py /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/autowaf/waf /Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/lilv-v0.24.10/waflib/
$ ./waf configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --static --no-shared --no-utils
$ ./waf
$ ./waf install
Downloading https://github.com/yasm/yasm/releases/download/v1.3.0/yasm-1.3.0.tar.gz as yasm-1.3.0.tar.gz
... Done
Extracted yasm-1.3.0.tar.gz
$ ./configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace
$ make -j 8
$ make install
Downloading https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.xz as nasm-2.15.05.tar.xz
... Done
Extracted nasm-2.15.05.tar.xz
$ ./configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --disable-shared --enable-static
$ make -j 8
$ make install
Downloading https://www.zlib.net/zlib-1.2.11.tar.gz as zlib-1.2.11.tar.gz
... Done
Extracted zlib-1.2.11.tar.gz
$ ./configure --static --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace
$ make -j 8
$ make install
Downloading https://www.openssl.org/source/openssl-1.1.1i.tar.gz as openssl-1.1.1i.tar.gz
... Done
Extracted openssl-1.1.1i.tar.gz
$ ./configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace no-shared no-asm darwin64-arm64-cc
$ make -j 8
$ make install_sw
Downloading https://cmake.org/files/v3.18/cmake-3.18.4.tar.gz as cmake-3.18.4.tar.gz
... Done
Extracted cmake-3.18.4.tar.gz
$ ./configure --prefix=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace --system-zlib
$ make -j 8
$ make install
Downloading https://github.com/AOMediaCodec/SVT-AV1/archive/v0.8.6.tar.gz as v0.8.6.tar.gz
... Done
Extracted v0.8.6.tar.gz
$ cmake -DCMAKE_INSTALL_PREFIX=/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/workspace -DENABLE_SHARED=off -DBUILD_SHARED_LIBS=OFF ../.. -GUnix Makefiles -DCMAKE_BUILD_TYPE=Release
$ make -j 8
Scanning dependencies of target safestringlib
Scanning dependencies of target clog
Scanning dependencies of target EbVersionHeaderGen
Scanning dependencies of target COMMON_C_DEFAULT
Scanning dependencies of target FASTFEAT
[ 1%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir///dummy.c.o
[ 2%] Generating version header
[ 3%] Building C object third_party/cpuinfo/deps/clog/CMakeFiles/clog.dir/src/clog.c.o
Scanning dependencies of target ENCODER_C_DEFAULT
[ 3%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/EbBlend_a64_mask_c.c.o
[ 3%] Building C object third_party/fastfeat/CMakeFiles/FASTFEAT.dir/fast.c.o
[ 3%] Building C object Source/Lib/Encoder/C_DEFAULT/CMakeFiles/ENCODER_C_DEFAULT.dir/EbComputeSAD_C.c.o
Scanning dependencies of target COMMON_CODEC
[ 3%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir/safe_str_constraint.c.o
[ 3%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbBitstreamUnit.c.o
[ 4%] Building C object third_party/fastfeat/CMakeFiles/FASTFEAT.dir/fast_9.c.o
[ 4%] Built target EbVersionHeaderGen
[ 5%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/EbInterPrediction_c.c.o
[ 6%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/EbIntraPrediction_c.c.o
[ 6%] Built target clog
[ 7%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir/ignore_handler_s.c.o
Scanning dependencies of target cpuinfo
[ 7%] Building C object third_party/cpuinfo/CMakeFiles/cpuinfo.dir/src/init.c.o
[ 8%] Building C object Source/Lib/Encoder/C_DEFAULT/CMakeFiles/ENCODER_C_DEFAULT.dir/EbComputeVariance_C.c.o
[ 8%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir/strcpy_s.c.o
[ 9%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbBlend_a64_mask.c.o
[ 9%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/EbPackUnPack_C.c.o
Scanning dependencies of target ENCODER_CODEC
[ 10%] Building C object third_party/cpuinfo/CMakeFiles/cpuinfo.dir/src/api.c.o
[ 10%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbAdaptiveMotionVectorPrediction.c.o
[ 11%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir/strncpy_s.c.o
[ 11%] Built target cpuinfo
[ 11%] Building C object third_party/fastfeat/CMakeFiles/FASTFEAT.dir/nonmax.c.o
[ 12%] Building C object third_party/safestringlib/CMakeFiles/safestringlib.dir/strnlen_s.c.o
[ 13%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/EbPictureOperators_C.c.o
Scanning dependencies of target ENCODER_GLOBALS
[ 13%] Building C object Source/Lib/Encoder/Globals/CMakeFiles/ENCODER_GLOBALS.dir/EbEncHandle.c.o
[ 13%] Built target safestringlib
[ 14%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbCdefProcess.c.o
[ 14%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/cfl_c.c.o
[ 14%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbBlockStructures.c.o
[ 14%] Building C object Source/Lib/Encoder/C_DEFAULT/CMakeFiles/ENCODER_C_DEFAULT.dir/EncodeTxbRef_C.c.o
[ 15%] Building C object Source/Lib/Common/C_DEFAULT/CMakeFiles/COMMON_C_DEFAULT.dir/filterintra_c.c.o
[ 16%] Building C object Source/Lib/Encoder/C_DEFAULT/CMakeFiles/ENCODER_C_DEFAULT.dir/sad_av1.c.o
[ 17%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbCabacContextModel.c.o
[ 17%] Built target COMMON_C_DEFAULT
[ 18%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbCodingLoop.c.o
[ 18%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbCdef.c.o
[ 19%] Building C object Source/Lib/Encoder/C_DEFAULT/CMakeFiles/ENCODER_C_DEFAULT.dir/variance.c.o
[ 19%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbCodingUnit.c.o
[ 20%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbDeblockingCommon.c.o
[ 21%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbDeblockingFilter.c.o
[ 22%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbInterPrediction.c.o
[ 22%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbIntraPrediction.c.o
[ 22%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbDlfProcess.c.o
[ 23%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncCdef.c.o
[ 23%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncDecProcess.c.o
[ 24%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbInvTransforms.c.o
[ 24%] Built target ENCODER_GLOBALS
[ 25%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncDecResults.c.o
[ 25%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbLog.c.o
[ 26%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbMalloc.c.o
[ 26%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbMcp.c.o
[ 27%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncDecSegments.c.o
[ 28%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbPictureBufferDesc.c.o
[ 28%] Built target ENCODER_C_DEFAULT
[ 28%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncDecTasks.c.o
[ 29%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbPictureOperators.c.o
[ 30%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncInterPrediction.c.o
[ 30%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncIntraPrediction.c.o
[ 30%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbRestoration.c.o
[ 30%] Built target FASTFEAT
[ 31%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncWarpedMotion.c.o
[ 32%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEncodeContext.c.o
[ 33%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbSegmentationParams.c.o
[ 33%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEntropyCoding.c.o
[ 34%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbSystemResourceManager.c.o
[ 34%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbSuperRes.c.o
[ 34%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbThreads.c.o
[ 35%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbTime.c.o
[ 36%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEntropyCodingProcess.c.o
[ 36%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbEntropyCodingResults.c.o
[ 37%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbUtility.c.o
[ 37%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/EbWarpedMotion.c.o
[ 38%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbFullLoop.c.o
[ 39%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/common_dsp_rtcd.c.o
[ 39%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbGlobalMotionEstimation.c.o
[ 39%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/convolve.c.o
[ 40%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbGlobalMotionEstimationCost.c.o
[ 41%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbInitialRateControlProcess.c.o
[ 42%] Building C object Source/Lib/Common/Codec/CMakeFiles/COMMON_CODEC.dir/grainSynthesis.c.o
[ 42%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbInitialRateControlReorderQueue.c.o
[ 43%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbInitialRateControlResults.c.o
[ 43%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMdRateEstimation.c.o
[ 44%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMeSadCalculation.c.o
[ 44%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbModeDecision.c.o
[ 45%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbModeDecisionConfigurationProcess.c.o
[ 46%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbModeDecisionProcess.c.o
[ 46%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMotionEstimation.c.o
[ 47%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMotionEstimationContext.c.o
[ 47%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMotionEstimationProcess.c.o
[ 48%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbMotionEstimationResults.c.o
[ 48%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbNeighborArrays.c.o
[ 49%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPacketizationProcess.c.o
[ 50%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPacketizationReorderQueue.c.o
[ 50%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureAnalysisProcess.c.o
[ 51%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureAnalysisResults.c.o
[ 51%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureControlSet.c.o
[ 52%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureDecisionProcess.c.o
[ 52%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureDecisionQueue.c.o
[ 53%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureDecisionReorderQueue.c.o
[ 54%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureDecisionResults.c.o
[ 54%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureDemuxResults.c.o
[ 55%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureManagerProcess.c.o
[ 55%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureManagerQueue.c.o
[ 56%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPictureManagerReorderQueue.c.o
[ 56%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPredictionStructure.c.o
[ 57%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbProductCodingLoop.c.o
[ 58%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbPsnr.c.o
[ 58%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRateControlProcess.c.o
[ 58%] Built target COMMON_CODEC
[ 59%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRateControlResults.c.o
[ 59%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRateControlTables.c.o
[ 60%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRateControlTasks.c.o
Scanning dependencies of target SvtAv1Dec
[ 61%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecBitstream.c.o
[ 62%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRateDistortionCost.c.o
[ 63%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecBitstreamUnit.c.o
[ 63%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecCdef.c.o
[ 64%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecHandle.c.o
[ 64%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbReferenceObject.c.o
[ 64%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecInterPrediction.c.o
[ 65%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecIntraPrediction.c.o
[ 66%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecInverseQuantize.c.o
[ 67%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbResize.c.o
[ 67%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbResourceCoordinationProcess.c.o
[ 68%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbResourceCoordinationResults.c.o
[ 68%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRestProcess.c.o
[ 68%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecLF.c.o
[ 69%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecMemInit.c.o
[ 69%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecNbr.c.o
[ 70%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbRestorationPick.c.o
[ 71%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecObmc.c.o
[ 71%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecParseBlock.c.o
[ 72%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecParseFrame.c.o
[ 73%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbSegmentation.c.o
[ 74%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecParseHelper.c.o
[ 74%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecParseInterBlock.c.o
[ 74%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbSequenceControlSet.c.o
[ 75%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbSourceBasedOperationsProcess.c.o
[ 75%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbTemporalFiltering.c.o
[ 76%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbTransQuantBuffers.c.o
[ 76%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/EbTransforms.c.o
[ 77%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/aom_dsp_rtcd.c.o
[ 78%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/av1me.c.o
[ 78%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/corner_detect.c.o
[ 79%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/corner_match.c.o
[ 80%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecParseObu.c.o
[ 80%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/dwt.c.o
[ 80%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecPicMgr.c.o
[ 81%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecProcess.c.o
[ 81%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecProcessBlock.c.o
[ 82%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/fft.c.o
[ 82%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/firstpass.c.o
[ 83%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/global_motion.c.o
/Users/hjtriem/Desktop/ffmpeg/ffmpeg-build-script/packages/v0.8.6/Source/Lib/Encoder/Codec/firstpass.c:1181:14: warning: unused variable 'src_ptr' [-Wunused-variable]
uint8_t *src_ptr = &(input_picture_ptr->buffer_y[buffer_index]);
^
[ 84%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecProcessFrame.c.o
[ 85%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/hash.c.o
[ 85%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/hash_motion.c.o
[ 86%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/level.c.o
[ 86%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/mcomp.c.o
[ 87%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecRestoration.c.o
[ 88%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/noise_model.c.o
[ 88%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/noise_util.c.o
1 warning generated.
[ 89%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/palette.c.o
[ 89%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecSuperRes.c.o
[ 90%] Building C object Source/Lib/Decoder/CMakeFiles/SvtAv1Dec.dir/Codec/EbDecUtils.c.o
[ 91%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/pass2_strategy.c.o
[ 91%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/ransac.c.o
[ 92%] Building C object Source/Lib/Encoder/Codec/CMakeFiles/ENCODER_CODEC.dir/vector.c.o
[ 92%] Linking C static library ../../../../../Bin/Release/libSvtAv1Dec.a
[ 92%] Built target SvtAv1Dec
Scanning dependencies of target SvtAv1DecApp
[ 94%] Building C object Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/EbDecAppMain.c.o
[ 94%] Building C object Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/EbDecTime.c.o
[ 94%] Building C object Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/EbDecParamParser.c.o
[ 95%] Building C object Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/EbFileUtils.c.o
[ 95%] Building C object Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/EbMD5Utility.c.o
[ 96%] Linking C executable ../../../../../Bin/Release/SvtAv1DecApp
Undefined symbols for architecture arm64:
"_cpuinfo_arm_mach_init", referenced from:
_cpuinfo_initialize in libSvtAv1Dec.a(init.c.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [../../Bin/Release/SvtAv1DecApp] Error 1
make[1]: *** [Source/App/DecApp/CMakeFiles/SvtAv1DecApp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 96%] Built target ENCODER_CODEC
make: *** [all] Error 2
Thx,
Harm Jan
Current version of the build script links zlib dynamically. Final executable gets a hard reference to ffmpeg-build-script/workspace/lib/libz.1.dylib.
I'm working on application, and need make version of windows too. It's possible that you make a script with windows version?
Hi all,
Would it be possible to add --enable-decklink?
(And yes, if needed I'll sponsor it.)
Thx,
Bouke
Please add option for create full static binary without system libraries dependencies.
I want to compile code on Debian and run on CentOS, but this is impossible because LibC, Libptheads and some other libs are dynamic
Look at projects https://github.com/zimbatm/ffmpeg-static - this is full static buld and I can comple this in Ubuntu and run on the CentOS.
Thank you ๐
When I ran this script it always broke at that part
building ffmpeg
=======================
Downloading http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
... Done
Failed to extract ffmpeg-snapshot.tar.bz2
After a little investigation it turned out that in line #309 there are 2 trailing spaces inside the quotes. After removing them it worked.
So this line
download "http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 " "ffmpeg-snapshot.tar.bz2 "
should be
download "http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2" "ffmpeg-snapshot.tar.bz2"
Thanks for sharing your script!
Hi,
I want to do noise suppression with ffmpeg rnnoise model, like described in this post. Can you show me how to do that, or maybe included this in your script?
If I simply included --enable-lv2
in ffmpeg configure, it shows this error:
ERROR: lilv-0 not found using pkg-config
[ 42%] Building C object Utilities/cmcurl/lib/CMakeFiles/cmcurl.dir/vtls/darwinssl.c.o
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1207:30: error: unrecognized platform name macOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1207:43: error: unrecognized platform name iOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1231:26: error: unrecognized platform name macOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1231:39: error: unrecognized platform name iOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1383:30: error: unrecognized platform name macOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
/Users/qizhang/Downloads/ffmpeg-build-script-master/packages/cmake-3.11.3/Utilities/cmcurl/lib/vtls/darwinssl.c:1383:43: error: unrecognized platform name iOS
if(__builtin_available(macOS 10.13, iOS 11.0, *)) {
^
6 errors generated.
make[2]: *** [Utilities/cmcurl/lib/CMakeFiles/cmcurl.dir/vtls/darwinssl.c.o] Error 1
make[1]: *** [Utilities/cmcurl/lib/CMakeFiles/cmcurl.dir/all] Error 2
make: *** [all] Error 2
Failed to Execute make -j 4
The zip download links work great on PC but sometimes they crash on Linux I fixed it by doing this: IIPoliII@b79303e
Hi hi!
Still a huge fan of this script, still feels like magic :)
Was wondering if it was possible to add LibSRT officially, as it is getting more and more popular (especially for "quick, dependency-free" deploys as relay servers).
I have a patch that will compile, but it's not ideal for 2 reasons:
git
but could of course wget
the commit archive.Love to work with you on making this work!
Hacky Patch:
if build "srt"; then
cd "$PACKAGES"
git clone https://github.com/Haivision/srt.git
cd srt
git checkout 10ed37b6d4b49a3042213b029f0de6bca4bcfe83
#sed -i -e 's/${name} ${srt_link_library})/${name} ${srt_link_library} ${WITH_EXTRALIBS})/' CMakeLists.txt
cmake -DCMAKE_INSTALL_PREFIX:PATH="${WORKSPACE}" -DENABLE_SHARED=OFF -DENABLE_STATIC=ON -DENABLE_APPS=ON -DWITH_EXTRALIBS="-lz -ldl" .
# if you just set -DENABLE_APPS=OFF these patches aren't needed since it's the included apps that will fail to compile against static ffmpeg
sed -i -e 's/libsrt.a -ldl -lssl -lcrypto -lpthread/libsrt.a -lssl -lcrypto -lz -ldl -lpthread/' CMakeFiles/srt-live-transmit.dir/link.txt
sed -i -e 's/libsrt.a -ldl -lssl -lcrypto -lpthread/libsrt.a -lssl -lcrypto -lz -ldl -lpthread/' CMakeFiles/srt-tunnel.dir/link.txt
sed -i -e 's/libsrt.a -ldl -lssl -lcrypto -lpthread/libsrt.a -lssl -lcrypto -lz -ldl -lpthread/' CMakeFiles/srt-file-transmit.dir/link.txt
execute make -j $MJOBS
execute make install
build_done "srt"
fi
....
--enable-libsrt
Amazing ffmpeg build script! Could you add libass support in the script?
In centos 7 openssl is installed in $workspace/lib64.
libaom is also in $workspace/lib64
When building ffmpeg it will fail for not found openssl.
libaom is the same.
If i copy them to $workspace/lib and modify $workspace/lib/pkgconfig/libssl.pc libcrypto.pc openssl.pc libaom.pc
then compile ffmpeg sucess.
Is that the same in your machine?
Would some fix operation be performed?
Hy
please advise on how to add this packages : libRTMP, libASS, libShine and libMxf.
Thank you
..add version to .done
file?
diff --git a/build-ffmpeg b/build-ffmpeg
index 800cef0..4b8ea94 100755
--- a/build-ffmpeg
+++ b/build-ffmpeg
@@ -112,11 +112,11 @@ execute () {
build () {
echo ""
- echo "building $1"
+ echo "building $1:$2"
echo "======================="
- if [ -f "$PACKAGES/$1.done" ]; then
- echo "$1 already built. Remove $PACKAGES/$1.done lockfile to rebuild it."
+ if [ -f "$PACKAGES/$1-$2.done" ]; then
+ echo "$1-$2 already built. Remove $PACKAGES/$1-$2.done lockfile to rebuild it."
return 1
fi
@@ -133,7 +133,7 @@ command_exists() {
build_done () {
- touch "$PACKAGES/$1.done"
+ touch "$PACKAGES/$1-$2.done"
}
cleanup () {
@@ -227,12 +227,13 @@ fi
## build tools
##
-if build "yasm"; then
- download "https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz"
+YASM_VERSION="1.3.0"
+if build "yasm" $YASM_VERSION; then
+ download "https://www.tortall.net/projects/yasm/releases/yasm-${YASM_VERSION}.tar.gz"
execute ./configure --prefix="${WORKSPACE}"
execute make -j $MJOBS
execute make install
- build_done "yasm"
+ build_done "yasm" $YASM_VERSION
fi
if build "nasm"; then
Under Amazon Web Services Amazon Linux AMI 2018.03 on EC2 t2.micro instance I was trying to compile ffmpeg for use with AWS Lambda.
sudo yum update -y
sudo yum groupinstall -y "Development Tools" "Development Libraries"
bash <(curl -s "https://raw.githubusercontent.com/markus-perl/ffmpeg-build-script/master/web-install.sh?v1")
Command went well including "building ffmpeg ... Done" but failed after that with error
ERROR: aom >= 1.0.0 not found using pkg-config
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
[email protected] mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
I know it's a bit early but AV1 codec option will be a nice option to get.
rm -f libx264.a
gcc-ar rc libx264.a common/mc.o common/predict.o common/pixel.o common/macroblock.o common/frame.o common/dct.o common/cpu.o common/cabac.o common/common.o common/
osdep.o common/rectangle.o common/set.o common/quant.o common/deblock.o common/vlc.o common/mvpred.o common/bitstream.o encoder/analyse.o encoder/me.o encoder/ratec
ontrol.o encoder/set.o encoder/macroblock.o encoder/cabac.o encoder/cavlc.o encoder/encoder.o encoder/lookahead.o common/threadpool.o common/x86/mc-c.o common/x86/p
redict-c.o common/opencl.o encoder/slicetype-cl.o common/x86/const-a.o common/x86/cabac-a.o common/x86/dct-a.o common/x86/deblock-a.o common/x86/mc-a.o common/x86/m
c-a2.o common/x86/pixel-a.o common/x86/predict-a.o common/x86/quant-a.o common/x86/cpu-a.o common/x86/dct-64.o common/x86/bitstream-a.o common/x86/sad-a.o common/x8
6/trellis-64.o
gcc-ranlib libx264.a
gcc -o x264 x264.o input/input.o input/timecode.o input/raw.o input/y4m.o output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o output/flv_bytestream.
o filters/filters.o filters/video/video.o filters/video/source.o filters/video/internal.o filters/video/resize.o filters/video/cache.o filters/video/fix_vfr_pts.o f
ilters/video/select_every.o filters/video/crop.o filters/video/depth.o input/avs.o input/thread.o libx264.a -ldl -m64 -lm -lpthread -ldl
/usr/bin/ld: libx264.a(cabac-a.o): relocation R_X86_64_32 against symbol x264_cabac_range_lps' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: libx264.a(quant-a.o): relocation R_X86_64_32 against hidden symbol
x264_pb_01' can not be used when making a shared object
/usr/bin/ld: libx264.a(dct-a.o): relocation R_X86_64_32 against hidden symbol x264_pw_8000' can not be used when making a shared object /usr/bin/ld: libx264.a(deblock-a.o): relocation R_X86_64_32 against hidden symbol
x264_pb_1' can not be used when making a shared object
/usr/bin/ld: libx264.a(mc-a.o): relocation R_X86_64_32 against hidden symbol x264_pw_64' can not be used when making a shared object /usr/bin/ld: libx264.a(mc-a2.o): relocation R_X86_64_32 against hidden symbol
x264_pw_32' can not be used when making a shared object
/usr/bin/ld: libx264.a(pixel-a.o): relocation R_X86_64_32 against hidden symbol x264_pw_00ff' can not be used when making a shared object /usr/bin/ld: libx264.a(predict-a.o): relocation R_X86_64_32 against hidden symbol
x264_pb_1' can not be used when making a shared object
/usr/bin/ld: libx264.a(dct-64.o): relocation R_X86_64_32 against hidden symbol x264_hsub_mul' can not be used when making a shared object /usr/bin/ld: libx264.a(sad-a.o): relocation R_X86_64_32 against hidden symbol
x264_pw_8' can not be used when making a shared object
/usr/bin/ld: libx264.a(trellis-64.o): relocation R_X86_64_32 against symbol `x264_cabac_entropy' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Makefile:202: recipe for target 'x264' failed
make: *** [x264] Error 1
Failed to Execute make -j 4
Ubuntu 17.04
64 bits
8 GB RAM
Procesador intel core i5 4 CPUS
Output:
make all-recursive
make[1]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1'
Making all in glib
make[2]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
make all-recursive
make[3]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
Making all in .
make[4]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
make[4]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
Making all in m4macros
make[4]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/m4macros'
make all-am
make[5]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/m4macros'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/m4macros'
make[4]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/m4macros'
Making all in glib
make[4]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
GEN glibconfig-stamp
config.status: executing glib/glibconfig.h commands
config.status: glib/glibconfig.h is unchanged
make all-recursive
make[5]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
Making all in libcharset
make[6]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib/libcharset'
make all-am
make[7]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib/libcharset'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib/libcharset'
make[6]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib/libcharset'
Making all in .
make[6]: Entering directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
CC libglib_2_0_la-gdate.lo
CC libglib_2_0_la-ghostutils.lo
CC libglib_2_0_la-ghook.lo
CC libglib_2_0_la-ghmac.lo
gdate.c: In function โg_date_strftimeโ:
gdate.c:2497:7: error: format not a string literal, format string not checked [-Werror=format-nonliteral]
tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
^~~~~~
CC libglib_2_0_la-giochannel.lo
CC libglib_2_0_la-gkeyfile.lo
CC libglib_2_0_la-glib-init.lo
cc1: some warnings being treated as errors
Makefile:1387: recipe for target 'libglib_2_0_la-gdate.lo' failed
make[6]: *** [libglib_2_0_la-gdate.lo] Error 1
make[6]: *** Waiting for unfinished jobs....
make[6]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
Makefile:1934: recipe for target 'all-recursive' failed
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
Makefile:953: recipe for target 'all' failed
make[4]: *** [all] Error 2
make[4]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib/glib'
Makefile:1046: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
Makefile:770: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1/glib'
Makefile:707: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/kodhe/james/projects/ffmpeg-build-script/packages/pkg-config-0.29.1'
Makefile:463: recipe for target 'all' failed
make: *** [all] Error 2
Failed to Execute make -j 4
Updated the May x264 package with Oct 7 and ffmpeg-build continues past x264 correctly.
download "http://ftp.videolan.org/pub/x264/snapshots/x264-snapshot-20181007-2245.tar.bz2" "last_x264.tar.bz2"
FFMPEG can also be updated to 4.0.2.
Compiles, thank you for this capability.
cc1: error: [...]/ffmpeg-build-script/workspace/include: No such file or directory [-Werror=missing-include-dirs]
An mkdir of the include directory fixed it.
Hi,
this is not really an issue, but is it possible to offer optional 32 bit output and static dylib creation with or without version suffix (--disable-symver)
Christian
You can follow this gist to update your script with hardware acceleration support
https://gist.github.com/Brainiarc7/95c9338a737aa36d9bb2931bed379219
Thanks for a really helpful script solution. I compiled a static version but when testing it out on a friends computer it cries about sdl2 dependency. I suspect he runs an old set up but is there anyway otherwise to enable sdl2 support into the binary? Here is what it looks like:
./ffmpeg -h
dyld: Library not loaded: /usr/local/opt/sdl2/lib/libSDL2-2.0.0.dylib
Referenced from: /Users/masc/Desktop/./ffmpeg
Reason: image not found
Trace/BPT trap: 5
EDIT: His os is OSX 10.9.5 by the way.
Hi Markus,
thank for the great work.
Since I have no experience with ffmpeg, I would like to ask the following questions:
Thanks in advance
I hope to increase the support for rkmpp. I have tried to compile static files by myself, but it fails every time. As far as I know, it may require the support of the library and send my warm wishes.
https://github.com/rockchip-linux/mpp
I suggest to include MACOSX_DEPLOYMENT_TARGET for macOS x86_64 target.
For example, MACOSX_DEPLOYMENT_TARGET=10.11
bash <(curl -s "https://raw.githubusercontent.com/markus-perl/ffmpeg-build-script/master/web-install.sh?v1")
ffmpeg-build-script-downloader v0.1
=========================================
First we create the ffmpeg build directory ffmpeg-build
Now we download and execute the build script
ffmpeg-build-script v1.24
=========================
Using 12 make jobs simultaneously.
building pkg-config
=======================
pkg-config-0.29.2.tar.gz has already downloaded.
Extracted pkg-config-0.29.2.tar.gz
$ ./configure --silent --prefix=/Users/wangxiaoxiang/Open Sources/ffmpeg_macos_build/ffmpeg-build/workspace --with-pc-path=/Users/wangxiaoxiang/Open Sources/ffmpeg_macos_build/ffmpeg-build/workspace/lib/pkgconfig --with-internal-glib
$ make -j 12
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in glib
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in .
make[4]: Nothing to be done for `all-am'.
Making all in m4macros
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-am
make[5]: Nothing to be done for `all-am'.
Making all in glib
GEN glibconfig-stamp
config.status: executing glib/glibconfig.h commands
config.status: glib/glibconfig.h is unchanged
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in libcharset
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-am
CC libcharset_la-localcharset.lo
GEN ref-add.sed
GEN charset.alias
GEN ref-del.sed
clang: error: no such file or directory: 'Sources/ffmpeg_macos_build/ffmpeg-build/workspace/lib"'
make[7]: *** [libcharset_la-localcharset.lo] Error 1
make[6]: *** [all] Error 2
make[5]: *** [all-recursive] Error 1
make[4]: *** [all] Error 2
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Failed to Execute make -j 12
Downloading https://github.com/webmproject/libvpx/archive/v1.8.1.tar.gz
... Done
/dev/fd/63: line 197: cd: too many arguments
The script is exiting on trying to build opencore
terminal log---
Downloading https://deac-riga.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.5.tar.gz
... Done
Failed to extract opencore-amr-0.1.5.tar.gz
Ubuntu 20.04.1 LTS
ffmpeg build
ERROR: x265 not found using pkg-config
solution: sudo apt-get install libnuma-dev
may be script should check libnuma-dev ?
https://stackoverflow.com/questions/51918409/compiling-ffmpeg-x265-not-found-using-pkg-config
when building the latest x264 ๏ผerrors occured ๏ผ
$ ./configure --prefix=/home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace --disable-shared --enable-static
$ make
dependency file generation...
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o x264.o x264.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/input.o input/input.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/timecode.o input/timecode.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/raw.o input/raw.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/y4m.o input/y4m.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/raw.o output/raw.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/matroska.o output/matroska.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/matroska_ebml.o output/matroska_ebml.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/flv.o output/flv.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/flv_bytestream.o output/flv_bytestream.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/filters.o filters/filters.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/video.o filters/video/video.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/source.o filters/video/source.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/internal.o filters/video/internal.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/resize.o filters/video/resize.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/cache.o filters/video/cache.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/fix_vfr_pts.o filters/video/fix_vfr_pts.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/select_every.o filters/video/select_every.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/crop.o filters/video/crop.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/depth.o filters/video/depth.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/avs.o input/avs.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/thread.o input/thread.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/lavf.o input/lavf.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/mc.o common/mc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/predict.o common/predict.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/pixel.o common/pixel.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/macroblock.o common/macroblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/frame.o common/frame.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/dct.o common/dct.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/cpu.o common/cpu.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/cabac.o common/cabac.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/common.o common/common.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/osdep.o common/osdep.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/rectangle.o common/rectangle.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/set.o common/set.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/quant.o common/quant.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/deblock.o common/deblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/vlc.o common/vlc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/mvpred.o common/mvpred.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/bitstream.o common/bitstream.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/analyse.o encoder/analyse.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/me.o encoder/me.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/ratecontrol.o encoder/ratecontrol.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/set.o encoder/set.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/macroblock.o encoder/macroblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/cabac.o encoder/cabac.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/cavlc.o encoder/cavlc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/encoder.o encoder/encoder.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/lookahead.o encoder/lookahead.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/threadpool.o common/threadpool.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/x86/mc-c.o common/x86/mc-c.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/x86/predict-c.o common/x86/predict-c.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/opencl.o common/opencl.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/slicetype-cl.o encoder/slicetype-cl.c
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/const-a.o common/x86/const-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/cabac-a.o common/x86/cabac-a.asm
common/x86/cabac-a.asm:106: error: redefinition of `.text'
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
common/x86/cabac-a.asm:263: error: only RES* allowed within absolute section
however๏ผ if I just make ๏ผit will be ok ๏ผ
root@ubuntu:/home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/packages/x264-snapshot-20161024-2245# make
cat common/opencl/x264-cl.h common/opencl/motionsearch.cl common/opencl/subpel.cl common/opencl/intra.cl common/opencl/weightp.cl common/opencl/downscale.cl common/opencl/bidir.cl | ./tools/cltostr.sh common/oclobj.h
dependency file generation...
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o x264.o x264.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/input.o input/input.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/timecode.o input/timecode.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/raw.o input/raw.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/y4m.o input/y4m.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/raw.o output/raw.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/matroska.o output/matroska.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/matroska_ebml.o output/matroska_ebml.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/flv.o output/flv.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o output/flv_bytestream.o output/flv_bytestream.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/filters.o filters/filters.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/video.o filters/video/video.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/source.o filters/video/source.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/internal.o filters/video/internal.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/resize.o filters/video/resize.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/cache.o filters/video/cache.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/fix_vfr_pts.o filters/video/fix_vfr_pts.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/select_every.o filters/video/select_every.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/crop.o filters/video/crop.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o filters/video/depth.o filters/video/depth.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/avs.o input/avs.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/thread.o input/thread.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o input/lavf.o input/lavf.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/mc.o common/mc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/predict.o common/predict.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/pixel.o common/pixel.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/macroblock.o common/macroblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/frame.o common/frame.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/dct.o common/dct.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/cpu.o common/cpu.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/cabac.o common/cabac.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/common.o common/common.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/osdep.o common/osdep.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/rectangle.o common/rectangle.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/set.o common/set.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/quant.o common/quant.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/deblock.o common/deblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/vlc.o common/vlc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/mvpred.o common/mvpred.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/bitstream.o common/bitstream.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/analyse.o encoder/analyse.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/me.o encoder/me.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/ratecontrol.o encoder/ratecontrol.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/set.o encoder/set.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/macroblock.o encoder/macroblock.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/cabac.o encoder/cabac.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/cavlc.o encoder/cavlc.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/encoder.o encoder/encoder.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/lookahead.o encoder/lookahead.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/threadpool.o common/threadpool.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/x86/mc-c.o common/x86/mc-c.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/x86/predict-c.o common/x86/predict-c.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o common/opencl.o common/opencl.c
gcc -Wno-maybe-uninitialized -Wshadow -O3 -ffast-math -m64 -Wall -I. -I. -std=gnu99 -D_GNU_SOURCE -mpreferred-stack-boundary=5 -I/usr/include/x86_64-linux-gnu -I/usr/include/x86_64-linux-gnu -fomit-frame-pointer -fno-tree-vectorize -c -o encoder/slicetype-cl.o encoder/slicetype-cl.c
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/const-a.o common/x86/const-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/cabac-a.o common/x86/cabac-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/dct-a.o common/x86/dct-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/deblock-a.o common/x86/deblock-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/mc-a.o common/x86/mc-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/mc-a2.o common/x86/mc-a2.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/pixel-a.o common/x86/pixel-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/predict-a.o common/x86/predict-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/quant-a.o common/x86/quant-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/cpu-a.o common/x86/cpu-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/dct-64.o common/x86/dct-64.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/bitstream-a.o common/x86/bitstream-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/sad-a.o common/x86/sad-a.asm
yasm -I. -I. -DARCH_X86_64=1 -I./common/x86/ -f elf64 -Worphan-labels -DSTACK_ALIGNMENT=32 -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o common/x86/trellis-64.o common/x86/trellis-64.asm
rm -f libx264.a
gcc-ar rc libx264.a common/mc.o common/predict.o common/pixel.o common/macroblock.o common/frame.o common/dct.o common/cpu.o common/cabac.o common/common.o common/osdep.o common/rectangle.o common/set.o common/quant.o common/deblock.o common/vlc.o common/mvpred.o common/bitstream.o encoder/analyse.o encoder/me.o encoder/ratecontrol.o encoder/set.o encoder/macroblock.o encoder/cabac.o encoder/cavlc.o encoder/encoder.o encoder/lookahead.o common/threadpool.o common/x86/mc-c.o common/x86/predict-c.o common/opencl.o encoder/slicetype-cl.o common/x86/const-a.o common/x86/cabac-a.o common/x86/dct-a.o common/x86/deblock-a.o common/x86/mc-a.o common/x86/mc-a2.o common/x86/pixel-a.o common/x86/predict-a.o common/x86/quant-a.o common/x86/cpu-a.o common/x86/dct-64.o common/x86/bitstream-a.o common/x86/sad-a.o common/x86/trellis-64.o
gcc-ranlib libx264.a
gcc -o x264 x264.o input/input.o input/timecode.o input/raw.o input/y4m.o output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o output/flv_bytestream.o filters/filters.o filters/video/video.o filters/video/source.o filters/video/internal.o filters/video/resize.o filters/video/cache.o filters/video/fix_vfr_pts.o filters/video/select_every.o filters/video/crop.o filters/video/depth.o input/avs.o input/thread.o input/lavf.o libx264.a -ldl -L. -lavformat-ffmpeg -lavcodec-ffmpeg -lavutil-ffmpeg -lswscale-ffmpeg -lswscale-ffmpeg -lavutil-ffmpeg -m64 -lm -lpthread -ldl
root@ubuntu:/home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/packages/x264-snapshot-20161024-2245# make install
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/bin
install x264 /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/bin
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/pkgconfig
install -m 644 ./x264.h /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -m 644 x264_config.h /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -m 644 x264.pc /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/pkgconfig
install -m 644 libx264.a /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib
gcc-ranlib /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/libx264.a
root@ubuntu:/home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/packages/x264-snapshot-20161024-2245# make install-lib-static
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib
install -d /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/pkgconfig
install -m 644 ./x264.h /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -m 644 x264_config.h /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/include
install -m 644 x264.pc /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/pkgconfig
install -m 644 libx264.a /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib
gcc-ranlib /home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/workspace/lib/libx264.a
root@ubuntu:/home/zhangbin/stream/ffmpeg/markus-perl/ffmpeg-build-script/packages/x264-snapshot-20161024-2245#
To build extra bits, you need to go to build/linux and execute the multilib.sh
Amazon Linux (amzn-ami-hvm-2018.03.0.20181129-x86_64-gp2)
bash <(curl -s "https://raw.githubusercontent.com/markus-perl/ffmpeg-build-script/master/web-install.sh?v1")
ERROR: srt >= 1.3.0 not found using pkg-config
Full output:
ffmpeg-build-script-downloader v0.1
=========================================
First we create the ffmpeg build directory ffmpeg-build
Now we download and execute the build script
ffmpeg-build-script v1.22
=========================
Using 1 make jobs simultaneously.
building pkg-config
=======================
Downloading https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz as pkg-config-0.29.2.tar.gz
... Done
Extracted pkg-config-0.29.2.tar.gz
$ ./configure --silent --prefix=/home/ec2-user/ffmpeg-build/workspace --with-pc-path=/home/ec2-user/ffmpeg-build/workspace/lib/pkgconfig --with-internal-glib
$ make -j 1
$ make install
building lv2
=======================
Downloading https://lv2plug.in/spec/lv2-1.18.0.tar.bz2 as lv2-1.18.0.tar.bz2
... Done
Extracted lv2-1.18.0.tar.bz2
$ ./waf configure --prefix=/home/ec2-user/ffmpeg-build/workspace --lv2-user
$ ./waf
$ ./waf install
building waflib
=======================
Downloading https://gitlab.com/drobilla/autowaf/-/archive/cc37724b9bfa889baebd8cb10f38b8c7cab83e37/autowaf-cc37724b9bfa889baebd8cb10f38b8c7cab83e37.tar.gz as autowaf.tar.gz
... Done
Extracted autowaf.tar.gz
building serd
=======================
Downloading https://gitlab.com/drobilla/serd/-/archive/v0.30.6/serd-v0.30.6.tar.gz as serd-v0.30.6.tar.gz
... Done
Extracted serd-v0.30.6.tar.gz
$ cp -r /home/ec2-user/ffmpeg-build/packages/autowaf/ansiterm.py /home/ec2-user/ffmpeg-build/packages/autowaf/Build.py /home/ec2-user/ffmpeg-build/packages/autowaf/ConfigSet.py /home/ec2-user/ffmpeg-build/packages/autowaf/Configure.py /home/ec2-user/ffmpeg-build/packages/autowaf/Context.py /home/ec2-user/ffmpeg-build/packages/autowaf/COPYING /home/ec2-user/ffmpeg-build/packages/autowaf/Errors.py /home/ec2-user/ffmpeg-build/packages/autowaf/extras /home/ec2-user/ffmpeg-build/packages/autowaf/fixpy2.py /home/ec2-user/ffmpeg-build/packages/autowaf/__init__.py /home/ec2-user/ffmpeg-build/packages/autowaf/Logs.py /home/ec2-user/ffmpeg-build/packages/autowaf/Node.py /home/ec2-user/ffmpeg-build/packages/autowaf/Options.py /home/ec2-user/ffmpeg-build/packages/autowaf/processor.py /home/ec2-user/ffmpeg-build/packages/autowaf/README.md /home/ec2-user/ffmpeg-build/packages/autowaf/Runner.py /home/ec2-user/ffmpeg-build/packages/autowaf/Scripting.py /home/ec2-user/ffmpeg-build/packages/autowaf/TaskGen.py /home/ec2-user/ffmpeg-build/packages/autowaf/Task.py /home/ec2-user/ffmpeg-build/packages/autowaf/Tools /home/ec2-user/ffmpeg-build/packages/autowaf/Utils.py /home/ec2-user/ffmpeg-build/packages/autowaf/waf /home/ec2-user/ffmpeg-build/packages/serd-v0.30.6/waflib/
$ ./waf configure --prefix=/home/ec2-user/ffmpeg-build/workspace --static --no-shared --no-posix
$ ./waf
$ ./waf install
building pcre
=======================
Downloading https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz as pcre-8.44.tar.gz
... Done
Extracted pcre-8.44.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building sord
=======================
Downloading https://gitlab.com/drobilla/sord/-/archive/v0.16.6/sord-v0.16.6.tar.gz as sord-v0.16.6.tar.gz
... Done
Extracted sord-v0.16.6.tar.gz
$ cp -r /home/ec2-user/ffmpeg-build/packages/autowaf/ansiterm.py /home/ec2-user/ffmpeg-build/packages/autowaf/Build.py /home/ec2-user/ffmpeg-build/packages/autowaf/ConfigSet.py /home/ec2-user/ffmpeg-build/packages/autowaf/Configure.py /home/ec2-user/ffmpeg-build/packages/autowaf/Context.py /home/ec2-user/ffmpeg-build/packages/autowaf/COPYING /home/ec2-user/ffmpeg-build/packages/autowaf/Errors.py /home/ec2-user/ffmpeg-build/packages/autowaf/extras /home/ec2-user/ffmpeg-build/packages/autowaf/fixpy2.py /home/ec2-user/ffmpeg-build/packages/autowaf/__init__.py /home/ec2-user/ffmpeg-build/packages/autowaf/Logs.py /home/ec2-user/ffmpeg-build/packages/autowaf/Node.py /home/ec2-user/ffmpeg-build/packages/autowaf/Options.py /home/ec2-user/ffmpeg-build/packages/autowaf/processor.py /home/ec2-user/ffmpeg-build/packages/autowaf/README.md /home/ec2-user/ffmpeg-build/packages/autowaf/Runner.py /home/ec2-user/ffmpeg-build/packages/autowaf/Scripting.py /home/ec2-user/ffmpeg-build/packages/autowaf/TaskGen.py /home/ec2-user/ffmpeg-build/packages/autowaf/Task.py /home/ec2-user/ffmpeg-build/packages/autowaf/Tools /home/ec2-user/ffmpeg-build/packages/autowaf/Utils.py /home/ec2-user/ffmpeg-build/packages/autowaf/waf /home/ec2-user/ffmpeg-build/packages/sord-v0.16.6/waflib/
$ ./waf configure --prefix=/home/ec2-user/ffmpeg-build/workspace CFLAGS=-I/home/ec2-user/ffmpeg-build/workspace/include --static --no-shared --no-utils
$ ./waf CFLAGS=-I/home/ec2-user/ffmpeg-build/workspace/include
$ ./waf install
building sratom
=======================
Downloading https://gitlab.com/lv2/sratom/-/archive/v0.6.6/sratom-v0.6.6.tar.gz as sratom-v0.6.6.tar.gz
... Done
Extracted sratom-v0.6.6.tar.gz
$ cp -r /home/ec2-user/ffmpeg-build/packages/autowaf/ansiterm.py /home/ec2-user/ffmpeg-build/packages/autowaf/Build.py /home/ec2-user/ffmpeg-build/packages/autowaf/ConfigSet.py /home/ec2-user/ffmpeg-build/packages/autowaf/Configure.py /home/ec2-user/ffmpeg-build/packages/autowaf/Context.py /home/ec2-user/ffmpeg-build/packages/autowaf/COPYING /home/ec2-user/ffmpeg-build/packages/autowaf/Errors.py /home/ec2-user/ffmpeg-build/packages/autowaf/extras /home/ec2-user/ffmpeg-build/packages/autowaf/fixpy2.py /home/ec2-user/ffmpeg-build/packages/autowaf/__init__.py /home/ec2-user/ffmpeg-build/packages/autowaf/Logs.py /home/ec2-user/ffmpeg-build/packages/autowaf/Node.py /home/ec2-user/ffmpeg-build/packages/autowaf/Options.py /home/ec2-user/ffmpeg-build/packages/autowaf/processor.py /home/ec2-user/ffmpeg-build/packages/autowaf/README.md /home/ec2-user/ffmpeg-build/packages/autowaf/Runner.py /home/ec2-user/ffmpeg-build/packages/autowaf/Scripting.py /home/ec2-user/ffmpeg-build/packages/autowaf/TaskGen.py /home/ec2-user/ffmpeg-build/packages/autowaf/Task.py /home/ec2-user/ffmpeg-build/packages/autowaf/Tools /home/ec2-user/ffmpeg-build/packages/autowaf/Utils.py /home/ec2-user/ffmpeg-build/packages/autowaf/waf /home/ec2-user/ffmpeg-build/packages/sratom-v0.6.6/waflib/
$ ./waf configure --prefix=/home/ec2-user/ffmpeg-build/workspace --static --no-shared
$ ./waf
$ ./waf install
building lilv
=======================
Downloading https://gitlab.com/lv2/lilv/-/archive/v0.24.10/lilv-v0.24.10.tar.gz as lilv-v0.24.10.tar.gz
... Done
Extracted lilv-v0.24.10.tar.gz
$ cp -r /home/ec2-user/ffmpeg-build/packages/autowaf/ansiterm.py /home/ec2-user/ffmpeg-build/packages/autowaf/Build.py /home/ec2-user/ffmpeg-build/packages/autowaf/ConfigSet.py /home/ec2-user/ffmpeg-build/packages/autowaf/Configure.py /home/ec2-user/ffmpeg-build/packages/autowaf/Context.py /home/ec2-user/ffmpeg-build/packages/autowaf/COPYING /home/ec2-user/ffmpeg-build/packages/autowaf/Errors.py /home/ec2-user/ffmpeg-build/packages/autowaf/extras /home/ec2-user/ffmpeg-build/packages/autowaf/fixpy2.py /home/ec2-user/ffmpeg-build/packages/autowaf/__init__.py /home/ec2-user/ffmpeg-build/packages/autowaf/Logs.py /home/ec2-user/ffmpeg-build/packages/autowaf/Node.py /home/ec2-user/ffmpeg-build/packages/autowaf/Options.py /home/ec2-user/ffmpeg-build/packages/autowaf/processor.py /home/ec2-user/ffmpeg-build/packages/autowaf/README.md /home/ec2-user/ffmpeg-build/packages/autowaf/Runner.py /home/ec2-user/ffmpeg-build/packages/autowaf/Scripting.py /home/ec2-user/ffmpeg-build/packages/autowaf/TaskGen.py /home/ec2-user/ffmpeg-build/packages/autowaf/Task.py /home/ec2-user/ffmpeg-build/packages/autowaf/Tools /home/ec2-user/ffmpeg-build/packages/autowaf/Utils.py /home/ec2-user/ffmpeg-build/packages/autowaf/waf /home/ec2-user/ffmpeg-build/packages/lilv-v0.24.10/waflib/
$ ./waf configure --prefix=/home/ec2-user/ffmpeg-build/workspace --static --no-shared --no-utils
$ ./waf
$ ./waf install
building yasm
=======================
Downloading https://github.com/yasm/yasm/releases/download/v1.3.0/yasm-1.3.0.tar.gz as yasm-1.3.0.tar.gz
... Done
Extracted yasm-1.3.0.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace
$ make -j 1
$ make install
building nasm
=======================
Downloading https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.xz as nasm-2.15.05.tar.xz
... Done
Extracted nasm-2.15.05.tar.xz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building zlib
=======================
Downloading https://www.zlib.net/zlib-1.2.11.tar.gz as zlib-1.2.11.tar.gz
... Done
Extracted zlib-1.2.11.tar.gz
$ ./configure --static --prefix=/home/ec2-user/ffmpeg-build/workspace
$ make -j 1
$ make install
building openssl
=======================
Downloading https://www.openssl.org/source/openssl-1.1.1i.tar.gz as openssl-1.1.1i.tar.gz
... Done
Extracted openssl-1.1.1i.tar.gz
$ ./config --prefix=/home/ec2-user/ffmpeg-build/workspace --openssldir=/home/ec2-user/ffmpeg-build/workspace --with-zlib-include=/home/ec2-user/ffmpeg-build/workspace/include/ --with-zlib-lib=/home/ec2-user/ffmpeg-build/workspace/lib no-shared zlib
$ make -j 1
$ make install_sw
building cmake
=======================
Downloading https://cmake.org/files/v3.18/cmake-3.18.4.tar.gz as cmake-3.18.4.tar.gz
... Done
Extracted cmake-3.18.4.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --system-zlib
$ make -j 1
$ make install
building svtav1
=======================
Downloading https://github.com/AOMediaCodec/SVT-AV1/archive/v0.8.6.tar.gz as v0.8.6.tar.gz
... Done
Extracted v0.8.6.tar.gz
$ cmake -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DENABLE_SHARED=off -DBUILD_SHARED_LIBS=OFF ../.. -GUnix Makefiles -DCMAKE_BUILD_TYPE=Release
$ make -j 1
$ make install
$ cp SvtAv1Enc.pc /home/ec2-user/ffmpeg-build/workspace/lib/pkgconfig/
$ cp SvtAv1Dec.pc /home/ec2-user/ffmpeg-build/workspace/lib/pkgconfig/
building x264
=======================
Downloading https://code.videolan.org/videolan/x264/-/archive/0d754ec36013fee82978496cd56fbd48824910b3/x264-0d754ec36013fee82978496cd56fbd48824910b3.tar.gz as x264-0d754ec.tar.gz
... Done
Extracted x264-0d754ec.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --enable-static --enable-pic CXXFLAGS=-fPIC
$ make -j 1
$ make install
$ make install-lib-static
building x265
=======================
Downloading https://github.com/videolan/x265/archive/Release_3.5.tar.gz as x265-3.5.tar.gz
... Done
Extracted x265-3.5.tar.gz
$ cmake -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DENABLE_SHARED=off -DBUILD_SHARED_LIBS=OFF ../../source
$ make -j 1
$ make install
building libvpx
=======================
Downloading https://github.com/webmproject/libvpx/archive/v1.9.0.tar.gz as libvpx-1.9.0.tar.gz
... Done
Extracted libvpx-1.9.0.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-unit-tests --disable-shared --as=yasm
$ make -j 1
$ make install
building xvidcore
=======================
Downloading https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.gz as xvidcore-1.3.7.tar.gz
... Done
Extracted xvidcore-1.3.7.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
$ rm /home/ec2-user/ffmpeg-build/workspace/lib/libxvidcore.so /home/ec2-user/ffmpeg-build/workspace/lib/libxvidcore.so.4 /home/ec2-user/ffmpeg-build/workspace/lib/libxvidcore.so.4.3
building vid_stab
=======================
Downloading https://github.com/georgmartius/vid.stab/archive/v1.1.0.tar.gz as vid.stab-1.1.0.tar.gz
... Done
Extracted vid.stab-1.1.0.tar.gz
$ cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DUSE_OMP=OFF -DENABLE_SHARED=off .
$ make
$ make install
building av1
=======================
Downloading https://aomedia.googlesource.com/aom/+archive/b52ee6d44adaef8a08f6984390de050d64df9faa.tar.gz as av1.tar.gz
... Done
Extracted av1.tar.gz
$ cmake -DENABLE_TESTS=0 -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DCMAKE_INSTALL_LIBDIR=lib /home/ec2-user/ffmpeg-build/packages/av1
$ make -j 1
$ make install
building opencore
=======================
Downloading https://deac-riga.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.5.tar.gz as opencore-amr-0.1.5.tar.gz
... Done
Extracted opencore-amr-0.1.5.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building lame
=======================
Downloading https://netcologne.dl.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz as lame-3.100.tar.gz
... Done
Extracted lame-3.100.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building opus
=======================
Downloading https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz as opus-1.3.1.tar.gz
... Done
Extracted opus-1.3.1.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building libogg
=======================
Downloading https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz as libogg-1.3.3.tar.gz
... Done
Extracted libogg-1.3.3.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building libvorbis
=======================
Downloading https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz as libvorbis-1.3.6.tar.gz
... Done
Extracted libvorbis-1.3.6.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --with-ogg-libraries=/home/ec2-user/ffmpeg-build/workspace/lib --with-ogg-includes=/home/ec2-user/ffmpeg-build/workspace/include/ --enable-static --disable-shared --disable-oggtest
$ make -j 1
$ make install
building libtheora
=======================
Downloading https://ftp.osuosl.org/pub/xiph/releases/theora/libtheora-1.1.1.tar.gz as libtheora-1.1.1.tar.gz
... Done
Extracted libtheora-1.1.1.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --with-ogg-libraries=/home/ec2-user/ffmpeg-build/workspace/lib --with-ogg-includes=/home/ec2-user/ffmpeg-build/workspace/include/ --with-vorbis-libraries=/home/ec2-user/ffmpeg-build/workspace/lib --with-vorbis-includes=/home/ec2-user/ffmpeg-build/workspace/include/ --enable-static --disable-shared --disable-oggtest --disable-vorbistest --disable-examples --disable-asm --disable-spec
$ make -j 1
$ make install
building fdk_aac
=======================
Downloading https://sourceforge.net/projects/opencore-amr/files/fdk-aac/fdk-aac-2.0.1.tar.gz/download?use_mirror=gigenet as fdk-aac-2.0.1.tar.gz
... Done
Extracted fdk-aac-2.0.1.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building libwebp
=======================
Downloading https://github.com/webmproject/libwebp/archive/v1.1.0.tar.gz as libwebp-1.1.0.tar.gz
... Done
Extracted libwebp-1.1.0.tar.gz
$ cmake -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_BINDIR=bin -DCMAKE_INSTALL_INCLUDEDIR=include -DENABLE_SHARED=OFF -DENABLE_STATIC=ON ../
$ make -j 1
$ make install
building libsdl
=======================
Downloading https://www.libsdl.org/release/SDL2-2.0.14.tar.gz as SDL2-2.0.14.tar.gz
... Done
Extracted SDL2-2.0.14.tar.gz
$ ./configure --prefix=/home/ec2-user/ffmpeg-build/workspace --disable-shared --enable-static
$ make -j 1
$ make install
building srt
=======================
Downloading https://github.com/Haivision/srt/archive/v1.4.1.tar.gz as srt-1.4.1.tar.gz
... Done
Extracted srt-1.4.1.tar.gz
$ cmake . -DCMAKE_INSTALL_PREFIX=/home/ec2-user/ffmpeg-build/workspace -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_BINDIR=bin -DCMAKE_INSTALL_INCLUDEDIR=include -DENABLE_SHARED=OFF -DENABLE_STATIC=ON -DENABLE_APPS=OFF -DUSE_STATIC_LIBSTDCXX=ON
$ make install
building ffmpeg
=======================
Downloading https://git.ffmpeg.org/gitweb/ffmpeg.git/snapshot/553eb0773763798a6b9656b621cb125e1f6edbcc.tar.gz as 553eb0773763798a6b9656b621cb125e1f6edbcc.tar.gz
... Done
Extracted 553eb0773763798a6b9656b621cb125e1f6edbcc.tar.gz
ERROR: srt >= 1.3.0 not found using pkg-config
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
[email protected] mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
$ make -j 1
Makefile:2: ffbuild/config.mak: No such file or directory
Makefile:40: /tools/Makefile: No such file or directory
Makefile:41: /ffbuild/common.mak: No such file or directory
Makefile:107: /libavutil/Makefile: No such file or directory
Makefile:107: /ffbuild/library.mak: No such file or directory
Makefile:109: /fftools/Makefile: No such file or directory
Makefile:110: /doc/Makefile: No such file or directory
Makefile:111: /doc/examples/Makefile: No such file or directory
Makefile:177: /tests/Makefile: No such file or directory
make: *** No rule to make target `/tests/Makefile'. Stop.
Failed to Execute make -j 1
Is it possible for your script to build an old build, more precisely 3.4.2?
Would you please to add --enable-libwebp support into build. Thank you advanced.
For some reason when building ffmpeg, the packages are not found using pkg-config. Any ideas?
Hi,
The build on my MacOS 10.15 still has some dynamic link library, as following:
$ otool -L ./workspace/bin/ffmpeg
./workspace/bin/ffmpeg:
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1677.104.0)
/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1000.0.0)
/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)
/System/Library/Frameworks/AVFoundation.framework/Versions/A/AVFoundation (compatibility version 1.0.0, current version 2.0.0)
/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
/System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (compatibility version 64.0.0, current version 1355.22.0)
/usr/local/opt/libxcb/lib/libxcb.1.dylib (compatibility version 3.0.0, current version 3.0.0)
/usr/local/opt/libxau/lib/libXau.6.dylib (compatibility version 7.0.0, current version 7.0.0)
/usr/local/opt/libxdmcp/lib/libXdmcp.6.dylib (compatibility version 7.0.0, current version 7.0.0)
/usr/local/opt/libxcb/lib/libxcb-shm.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/libxcb/lib/libxcb-shape.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/libxcb/lib/libxcb-xfixes.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/libxcb/lib/libxcb-render.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
/System/Library/Frameworks/CoreHaptics.framework/Versions/A/CoreHaptics (compatibility version 1.0.0, current version 1.0.0, weak)
/System/Library/Frameworks/GameController.framework/Versions/A/GameController (compatibility version 1.0.0, current version 1.0.0, weak)
/System/Library/Frameworks/ForceFeedback.framework/Versions/A/ForceFeedback (compatibility version 1.0.0, current version 1.0.2)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 23.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 162.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore (compatibility version 1.2.0, current version 1.11.0, weak)
/System/Library/Frameworks/Metal.framework/Versions/A/Metal (compatibility version 1.0.0, current version 212.8.0, weak)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreImage.framework/Versions/A/CoreImage (compatibility version 1.0.1, current version 5.0.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1894.60.100)
/usr/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 902.1.0)
/usr/local/opt/xz/lib/liblzma.5.dylib (compatibility version 8.0.0, current version 8.5.0)
/System/Library/Frameworks/VideoToolbox.framework/Versions/A/VideoToolbox (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1677.104.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 1069.24.0)
How can I fix this?
Is it possible to add a target for Windows? Cross-compilation on Linux/macOS.
Thanks for your great work! Really simple script which works fine on macOS.
Hi Markus,
I just realized that the script doesn't make a pure static ffmpeg binary, if you run ldd {folder}/ffmpeg
you will get:
linux-vdso.so.1 => (0x00007ffe82f71000)
libm.so.6 => /lib64/libm.so.6 (0x00007fe9d8dcf000)
libnppig.so.11 => /usr/local/cuda/lib64/libnppig.so.11 (0x00007fe9d721a000)
libnppicc.so.11 => /usr/local/cuda/lib64/libnppicc.so.11 (0x00007fe9d6b71000)
libnppidei.so.11 => /usr/local/cuda/lib64/libnppidei.so.11 (0x00007fe9d61ca000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fe9d5fc6000)
libz.so.1 => /lib64/libz.so.1 (0x00007fe9d5db0000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe9d5b94000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fe9d588d000)
librt.so.1 => /lib64/librt.so.1 (0x00007fe9d5685000)
libc.so.6 => /lib64/libc.so.6 (0x00007fe9d52b7000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe9d90d1000)
libnppc.so.11 => /usr/local/cuda/lib64/libnppc.so.11 (0x00007fe9d5036000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fe9d4e20000)
Besides the cuda libraries (That are the ones that look for the drivers), I can't manage to put all the libraries static.
If I run the most simple ffmpeg build command
./configure \
--pkgconfigdir="$WORKSPACE/lib/pkgconfig " \
--prefix="${WORKSPACE}" \
--pkg-config-flags="--static" \
--extra-cflags="$CFLAGS" \
--extra-ldflags="$LDFLAGS" \
--enable-static \
--disable-shared
You still get shared libraries:
linux-vdso.so.1 => (0x00007ffff5d71000)
libm.so.6 => /lib64/libm.so.6 (0x00007fa5a924b000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fa5a903b000)
libz.so.1 => /lib64/libz.so.1 (0x00007fa5a8e25000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa5a8c09000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa5a883b000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa5a954d000)
I saw another builds and ldd shows "No shared libraries" message when you eval with ldd
What can cause this?
It would be great to have openssl as well. It's used for downloading videos from https sources with ffmpeg.
error:
GNU libiconv not in use but included iconv.h is from libiconv
solution: Add --with-libiconv=gnu in ./configure command .
like this:
execute ./configure --silent --prefix="${WORKSPACE}" --with-pc-path="${WORKSPACE}"/lib/pkgconfig --with-internal-glib --with-libiconv=gnu
Please, modify your script for support new verision ffmpeg - 4.2
[ 72%] Building C object CMakeFiles/imageenc.dir/imageio/image_enc.c.o
Scanning dependencies of target vwebp_sdl
[ 73%] Building C object CMakeFiles/vwebp_sdl.dir/extras/vwebp_sdl.c.o
[ 73%] Building C object CMakeFiles/vwebp_sdl.dir/extras/webp_to_sdl.c.o
/Users/filipp/koding/ffmpeg-build-script/packages/libwebp-1.1.0/extras/vwebp_sdl.c:33:10: fatal error: 'SDL/SDL.h' file not found
#include <SDL/SDL.h>
^~~~~~~~~~~
1 error generated.
make[2]: *** [CMakeFiles/vwebp_sdl.dir/extras/vwebp_sdl.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/Users/filipp/koding/ffmpeg-build-script/packages/libwebp-1.1.0/extras/webp_to_sdl.c:28:10: fatal error: 'SDL/SDL.h' file not found
#include <SDL/SDL.h>
^~~~~~~~~~~
1 error generated.
make[2]: *** [CMakeFiles/vwebp_sdl.dir/extras/webp_to_sdl.c.o] Error 1
make[1]: *** [CMakeFiles/vwebp_sdl.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.