mac编译ffmpeg
./configure --extra-cflags="-mmacosx-version-min=10.13" --extra-ldflags="-mmacosx-version-min=10.13" --arch=arm64 --disable-shared --enable-static --prefix=$(pwd)/build_arm64make cleanmake -j$(sysctl -n hw.logicalcpu)
make install
x86_64结构,需要用intel版本的homebrew,编译环境也要是x86_64
arch -x86_64 zsh -c 'cd /Users/jack/ffmpeg-8.0make distcleanexport PATH="/usr/local/bin:$PATH"export CC="clang"export CXX="clang++"export CFLAGS="-arch x86_64"export LDFLAGS="-arch x86_64"export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"
./configure --extra-cflags="-mmacosx-version-min=10.13" --extra-ldflags="-mmacosx-version-min=10.13" --arch=x86_64 --disable-shared --enable-static --prefix=$(pwd)/build_x86_64make -j"$(sysctl -n hw.ncpu)"make install
'
合成通用库
mkdir build_universal
cp -R build_arm64/lib/pkgconfig build_universal/
cp -R build_arm64/include build_universal/lipo -create \build_x86_64/lib/libavcodec.a \build_arm64/lib/libavcodec.a \-output build_universal/libavcodec.alipo -create \build_x86_64/lib/libavfilter.a \build_arm64/lib/libavfilter.a \-output build_universal/libavfilter.alipo -create \build_x86_64/lib/libavutil.a \build_arm64/lib/libavutil.a \-output build_universal/libavutil.alipo -create \build_x86_64/lib/libswscale.a \build_arm64/lib/libswscale.a \-output build_universal/libswscale.alipo -create \build_x86_64/lib/libavdevice.a \build_arm64/lib/libavdevice.a \-output build_universal/libavdevice.alipo -create \build_x86_64/lib/libavformat.a \build_arm64/lib/libavformat.a \-output build_universal/libavformat.alipo -create \build_x86_64/lib/libswresample.a \build_arm64/lib/libswresample.a \-output build_universal/libswresample.a
验证:
lipo -info *.a