【发布时间】:2017-01-05 06:48:29
【问题描述】:
我需要有关如何为 bazel 单独设置目标和编译 Sdk 版本的帮助。
我想按照this 教程在手机上运行 tensorflow。为 bazel 编辑 WORKSPACE 后如下:
android_sdk_repository(
name = "androidsdk",
api_level = 24,
build_tools_version = "24.0.1",
path = "/home/Android/Sdk",
)
android_ndk_repository(
name="androidndk",
path="/home/Android/Sdk/ndk-bundle",
api_level=21)
我在安装 apk 时在手机上收到 PARSE ERROR:
adb install -r bazel-bin/tensorflow/examples/android/tensorflow_demo.apk
我启用了 USB 调试和 3rd 方 apk 安装。手机使用Android 4.4.4,所以我更改了WORKSPACE配置以匹配它(SDK管理器正确安装的工具和API):
android_sdk_repository(
name = "androidsdk",
api_level = 19,
build_tools_version = "19.1.0",
path = "/home/Android/Sdk",
)
android_ndk_repository(
name="androidndk",
path="/home/Android/Sdk/ndk-bundle",
api_level=21)
构建为:
bazel build //tensorflow/examples/android:tensorflow_demo
我最终会遇到一些此类错误:
Error at 5 : /tmp/android_resources_tmp7060220119759636814/merged_resources/values-v21/values.xml:5: error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Light'.
按照this 的回答,我应该为编译API 版本> 21 构建,但同时目标API 版本为19。它可以很容易地设置为gradle。但是我还没有找到任何线索如何为bazel 做到这一点。任何建议表示赞赏!
【问题讨论】:
标签: android tensorflow android-gradle-plugin bazel