这是为我工作。

LOCAL_PATH := $(call my-dir)

ROOT_PATH := $(LOCAL_PATH)

include $(call all-subdir-makefiles)

include $(CLEAR_VARS)

LOCAL_PATH = $(ROOT_PATH)

LOCAL_CFLAGS := -Wall -Wextra

LOCAL_MODULE := water

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

LOCAL_STATIC_LIBRARIES := fftw3

LOCAL_SRC_FILES := \

water/src/vertex.cpp \

water/src/face.cpp \

water/src/Solver.cpp \

water/src/Water.cpp

include $(BUILD_SHARED_LIBRARY)

而且我用的Android NDK工具链构建FFTW 这是我build.sh。把这个在你的Android项目文件夹,然后运行它,并把FFTW文件夹中的父文件夹

#!/bin/sh

# fftw3/build.sh

# Compiles fftw3 for Android

# Make sure you have NDK_ROOT defined in .bashrc or .bash_profile

INSTALL_DIR="`pwd`/app/jni/fftw3"

SRC_DIR="`pwd`/../fftw-3.3.4"

cd $SRC_DIR

export

PATH="/android-ndk-r11c/toolchains/arm-linux-androideabi- 4.9/prebuilt/darwin-x86_64/bin:$PATH"

export SYS_ROOT="/android-ndk-r11c/platforms/android-17/arch-arm/"

export CC="arm-linux-androideabi-gcc --sysroot=$SYS_ROOT"

export LD="arm-linux-androideabi-ld"

export AR="arm-linux-androideabi-ar"

export RANLIB="arm-linux-androideabi-ranlib"

export STRIP="arm-linux-androideabi-strip"

mkdir -p $INSTALL_DIR

./configure --host=arm-linux-androideabi --build=x86_64-apple-darwin --

prefix=$INSTALL_DIR LIBS="-lc -lgcc"

make

make install

exit 0

而且你会发现FFTW在app/JNI文件夹,将包括垃圾桶,包括lib下,共享文件夹和LIB你会发现文件夹libfftw3.a

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐