libxm2 library compile
- download source code
git clone https://gitlab.gnome.org/GNOME/libxml2
cd libxml2
- init project
./autogen.sh
- build
NDK_ROOT=$ANDROID_NDK_HOME
export NDK=$ANDROID_NDK_HOME
# export CROSS_COMPILE="arm-linux-androideabi"
# export SYSROOT="$NDK/platforms/android-14/arch-arm"
export CROSS_COMPILE="aarch64-linux-android"
export SYSROOT="$NDK/platforms/android-21/arch-arm64"
export NDK_BUILD_BIN="$NDK/toolchains/${CROSS_COMPILE}-4.9/prebuilt/linux-x86_64/bin"
export PATH="$PATH:$NDK_BUILD_BIN"
export CC="${CROSS_COMPILE}-gcc"
export CXX="${CROSS_COMPILE}-g++"
export CPPFLAGS="--sysroot=${SYSROOT}"
export CFLAGS="--sysroot=${SYSROOT} -I."
echo "-------------------------"
echo "start configure"
echo "-------------------------"
./configure --build=X86_64-unknown-linux-gnu \
--host=${CROSS_COMPILE} \
--target=${CROSS_COMPILE} \
--prefix=/home/von/library/libxml2 \
--without-python --without-zlib
echo "-------------------------"
echo "start make"
echo "-------------------------"
make -j8
echo "-------------------------"
echo "start install"
echo "-------------------------"
make install
- 目前编译出来的32bit的so正常,
- 64位 checking whether the C compiler works... no 修改 export SYSROOT="$NDK/platforms/android-21/arch-arm64"
问题
BFD: libncurses.so.5: cannot open shared object file: No such file or directory
sudo apt install apt-file
sudo apt-file update
sudo apt-file find libncurses.so.5
sudo apt install libncurses5