TensorFlow Android演示:无法使用Bazel构建,无法读取RELEASE.TXT

TensorFlow Android演示:无法使用Bazel构建,无法读取RELEASE.TXT,android,android-ndk,tensorflow,bazel,Android,Android Ndk,Tensorflow,Bazel,最近,我一直在学习如何使用TensorFlow,并想在我的电脑上设置Android演示,看看它们是如何工作的。我按照提供的说明进行操作,唯一的区别是我通过Android Studio安装了Android SDK,并通过SDK管理器安装了Android NDK。在$bazel build//tensorflow/examples/android:tensorflow_demo之前,一切正常,但在那之后,我从终端收到了以下错误: ERROR: no such package '@androidndk

最近,我一直在学习如何使用TensorFlow,并想在我的电脑上设置Android演示,看看它们是如何工作的。我按照提供的说明进行操作,唯一的区别是我通过Android Studio安装了Android SDK,并通过SDK管理器安装了Android NDK。在
$bazel build//tensorflow/examples/android:tensorflow_demo
之前,一切正常,但在那之后,我从终端收到了以下错误:

ERROR: no such package '@androidndk//': Could not read RELEASE.TXT in Android NDK: /home/me/.cache/bazel/_bazel_me/f3471be34d1e62bf21975aa777cedaa3/external/androidndk/ndk/RELEASE.TXT (No such file or directory).
ERROR: no such package '@androidndk//': Could not read RELEASE.TXT in Android NDK: /home/me/.cache/bazel/_bazel_me/f3471be34d1e62bf21975aa777cedaa3/external/androidndk/ndk/RELEASE.TXT (No such file or directory).
通过查看类似的问题,我的理解是,这个错误是因为RELEASE.TXT文件没有包含在最新版本的Android NDK中。建议降级到包含RELEASE.TXT文件的NDK的早期版本,并提供下载此类版本的链接。然而,我跟随的链接()下载了一个.bin文件,我无法使用它。那篇帖子还建议在工作区文件中注释掉NDK条目,但我还没有尝试过,因为我不知道这是否会导致进一步的复杂化

我尝试过的另一种方法是转到错误日志所指示的路径(
/home/me/.cache/bazel/_bazel\u me/f3471be34de1e62bf21975aa777cedaa3/external/androidndk/ndk
)并创建一个空白的RELEASE.TXT文件,这没有什么区别。(我无法在我安装的NDK中创建一个,因为它是以.jar文件的形式存在于路径
/home/me/android studio/android studio/plugins/android NDK/lib
,因此我只能看到这个路径。)


现在看来,我已经走到了死胡同。是否有其他方法可以在不降级或注释NDK条目的情况下解决此问题?如果没有,我如何安装Android NDK的早期版本?

您是否考虑过使用其他方法在不使用Bazel的情况下为Android编译TensorFlow?它在

中有描述,我也在TensorFlow的官方GitHub存储库中发布了这个问题,并且已经解决了。在该线程中可以找到我为解决问题而遵循的步骤的逐个播放。这有点复杂,因此我认为解决此类问题的步骤如下:

  • 如果git克隆TensorFlow存储库时没有使用--recursive选项,请使用该选项重新克隆它
  • 降级到Android NDK r11c(并确保相应地更新工作区文件)。Linux版本的链接可以在GitHub线程中找到
  • 检查Android SDK和构建工具的版本。如果它们与工作区文件中写入的默认版本不同,请确保对此进行更改
  • 您可能会遇到一个到目前为止尚未解决的TensorFlow问题。()如果是,请运行./configure作为解决方法

  • 这应该允许Bazel构建成功进行。

    该链接用于构建TensorFlow本身,我已经(成功)完成了。我正在尝试构建TensorFlow Android演示,但没有成功。