如何包含预建的" *。a"库(从tensorflow)到我的Android NDK项目没有Android.mk文件?

时间:2017-12-04 19:30:46

标签: android tensorflow android-ndk ndk-build

在我的NDK应用程序中构建lintensorflow_core.a之后,我尝试编译我的应用程序以使用tensorflow C ++库。该应用程序具有主Java层,与NDK组件通信。在那个NDK组件中,我希望这样调用tensorflow:using namespace ::tensorflow::ops; // NOLINT(build/namespaces)

我已经看到了一些关于如何使用Android.mk文件进行操作的链接。但显然,在新版本的android studio中不再创建。如果可以使用Android.mkndk-build命令,那么这也很棒。但是,Android.mkndk-build的组合也让我失望了。输出基本上没什么。

我确实有很多Android.mk文件的变体,其中一个是:

LOCAL_PATH := $(call my-dir)
TENSORFLOW_HOME := $(LOCAL_PATH)/../../../../../tensorflow
TENSORFLOW_CORE := $(LOCAL_PATH)/../../../../../tensorflow/tensorflow/core
TENSORFLOW_OPS := $(LOCAL_PATH)/../../../../../tensorflow/tensorflow/core/ops

include $(CLEAR_VARS)

LOCAL_MODULE    := tensorflow
LOCAL_SRC_FILES := $(TENSORFLOW_HOME)/tensorflow/contrib/makefile/gen/lib/android_armeabi-v7a/libtensorflow-core.a

LOCAL_LDLIBS := -static -Wl,--build-id -Wl,--allow-multiple-definition -Wl,--whole-archive
LOCAL_CFLAGS := -std=c++11 -I$(TENSORFLOW_HOME)
LOCAL_C_INCLUDES := $(TENSORFLOW_OPS)
TARGET_ARCH_ABI := armeabi
include $(PREBUILT_STATIC_LIBRARY)

但这完全失败了。有人能指出我正确的方向吗?

0 个答案:

没有答案