can not build with android ndk 21 on mac(Big Sur)
Following is my steps.
$ git clone https://github.com/GStreamer/cerbero.git
$ cd cerbero
$ ./cerbero-uninstalled -c config/cross-android-universal.cbc bootstrap # Success
$ ./cerbero-uninstalled -c config/cross-android-universal.cbc package gstreamer-1.0 # FAIL..
But, when i built it with cross-ios-universal.cbc, it was built(success!).
log says pnglibconf.c:34:11: fatal error: 'zlib.h' file not found
but there is zlib, and `./cerbero-uninstalled -c config/cross-android-universal.cbc build zlib' was also worked.
here is comile step's log
#/cerbero/build/logs/android_armv7/libpng-compile.log
Running command 'make V=1 -j8'
rm -f pnglibconf.c pnglibconf.tf[45]
awk -f ./scripts/options.awk out=pnglibconf.tf4 version=search\
./pngconf.h ./scripts/pnglibconf.dfa\
./pngusr.dfa 1>&2
awk -f ./scripts/options.awk out=pnglibconf.tf5 pnglibconf.tf4 1>&2
rm pnglibconf.tf4
mv pnglibconf.tf5 pnglibconf.c
rm -f pnglibconf.out pnglibconf.tf[12]
test -d scripts || mkdir scripts || test -d scripts
/Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -E -DHAVE_CONFIG_H -I. \
-DANDROID -DPIC -D__ANDROID_API__=26 -Wall -g -Os -DPNGLIB_LIBNAME='PNG16_0' -DPNGLIB_VERSION='1.6.37' -DSYMBOL_PREFIX='_' -DPNG_NO_USE_READ_MACROS -DPNG_BUILDING_SYMBOL_TABLE pnglibconf.c > pnglibconf.tf1
pnglibconf.c:34:11: fatal error: 'zlib.h' file not found
# include <zlib.h>
^~~~~~~~
1 error generated.
make: *** [pnglibconf.out] Error 1
And this is configure step's log
#/cerbero/build/logs/android_armv7/libpng-configure.log
CERBERO: copying /Users/joyuiyeong/cerbero/data/autotools/config.guess to /Users/joyuiyeong/cerbero/build/sources/android_universal/arm64/libpng-1.6.37/config.guess
CERBERO: copying /Users/joyuiyeong/cerbero/data/autotools/config.sub to /Users/joyuiyeong/cerbero/build/sources/android_universal/arm64/libpng-1.6.37/config.sub
CERBERO: copying /Users/joyuiyeong/cerbero/build/build-tools/share/libtool/build-aux/ltmain.sh to /Users/joyuiyeong/cerbero/build/sources/android_universal/arm64/libpng-1.6.37/ltmain.sh
Running command 'sh -c './configure --prefix /Users/joyuiyeong/cerbero/build/dist/android_universal/arm64 --libdir /Users/joyuiyeong/cerbero/build/dist/android_universal/arm64/lib --with-pic --disable-maintainer-mode --disable-silent-rules --disable-gtk-doc --disable-introspection --host=aarch64-linux-android --disable-arm-neon ''
configure: WARNING: unrecognized options: --disable-gtk-doc, --disable-introspection
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for aarch64-linux-android-strip... aarch64-linux-android-strip
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for aarch64-linux-android-gcc... /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 accepts -g... yes
checking for /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 option to accept ISO C89... none needed
checking whether /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64... gcc3
checking dependency style of /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64... gcc3
checking build system type... x86_64-apple-darwin20.2.0
checking host system type... aarch64-unknown-linux-android
checking for a sed that does not truncate output... /Users/joyuiyeong/cerbero/build/build-tools/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking how to print strings... printf
checking for ld used by /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64... aarch64-linux-android-ld.gold
checking if the linker (aarch64-linux-android-ld.gold) is GNU ld... yes
checking how to run the C preprocessor... /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -E
checking for gawk... (cached) awk
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking for BSD- or MS-compatible name lister (nm)... aarch64-linux-android-nm
checking the name lister (aarch64-linux-android-nm) interface... BSD nm
checking the maximum length of command line arguments... 786432
checking how to convert x86_64-apple-darwin20.2.0 file names to aarch64-unknown-linux-android format... func_convert_file_noop
checking how to convert x86_64-apple-darwin20.2.0 file names to toolchain format... func_convert_file_noop
checking for aarch64-linux-android-ld.gold option to reload object files... -r
checking for aarch64-linux-android-objdump... aarch64-linux-android-objdump
checking how to recognize dependent libraries... pass_all
checking for aarch64-linux-android-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for aarch64-linux-android-ar... aarch64-linux-android-ar
checking for archiver @FILE support... @
checking for aarch64-linux-android-strip... (cached) aarch64-linux-android-strip
checking for aarch64-linux-android-ranlib... aarch64-linux-android-ranlib
checking command to parse aarch64-linux-android-nm output from /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for aarch64-linux-android-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for ANSI C header files... no
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 supports -fno-rtti -fno-exceptions... yes
checking for /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 option to produce PIC... -fPIC -DPIC
checking if /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 PIC flag -fPIC -DPIC works... yes
checking if /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 static flag -static works... yes
checking if /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 supports -c -o file.o... yes
checking if /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 supports -c -o file.o... (cached) yes
checking whether the /Users/joyuiyeong/cerbero/build/android-ndk-21/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang -target aarch64-none-linux-android --sysroot /Users/joyuiyeong/cerbero/build/android-ndk-21/platforms/android-26/arch-arm64 linker (aarch64-linux-android-ld.gold) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... Android linker
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking that AWK works... ok
checking if we need to force back C standard to C89... no
checking for ANSI C header files... (cached) no
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for C/C++ restrict keyword... __restrict
checking for working strtod... no
checking for pow... no
checking for pow in -lm... yes
checking for pow... (cached) no
checking for pow in -lm... (cached) yes
checking for clock_gettime... yes
checking for zlibVersion in -lz... yes
checking for feenableexcept in -lm... yes
checking for feenableexcept... yes
checking if using Solaris linker... no
checking if libraries can be versioned... yes
checking for symbol prefix... _
configure: pkgconfig directory is ${libdir}/pkgconfig
configure: Extra options for compiler:
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libpng.pc
config.status: creating libpng-config
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
configure: WARNING: unrecognized options: --disable-gtk-doc, --disable-introspection
What am I wrong?