如何构建Android的C-战神库(NDK)(how to build c-ares library

2019-08-04 00:11发布

谁能告诉我如何在Android编译C-战神库(NDK建造)

Answer 1:

以下是如何将其建成为ARMv7的静态库与NDK独立工具链 :

export NDK=/tmp/android-ndk-r8b

# Create the standalone toolchain
$NDK/build/tools/make-standalone-toolchain.sh \
--platform=android-9 \
--install-dir=/tmp/my-android-toolchain

export PATH=/tmp/my-android-toolchain/bin:$PATH
export SYSROOT=/tmp/my-android-toolchain/sysroot
export CC="arm-linux-androideabi-gcc --sysroot $SYSROOT"

# Download the latest release
curl -O http://c-ares.haxx.se/download/c-ares-1.9.1.tar.gz
tar xvfz c-ares-1.9.1.tar.gz

# Configure
cd c-ares-1.9.1 && mkdir build
./configure --prefix=$(pwd)/build \
--host=arm-linux-androideabi \
--disable-shared \
CFLAGS="-march=armv7-a"

# Build and install
make && make install

而已。 静态库下部署build/lib/libcares.a

如果你的目标等archs(如armeabix86 )重复configure与适当的-march值,并重新建立每个拱库。 此外,随意:

  • 目标平台适应您的需求(这里的Android 2.3,又名API 9级),
  • 使用configure符合您需要的选项(例如,您可能希望除了建立一个动态库,启用/禁用某些功能等)。


文章来源: how to build c-ares library in android (NDK)