错误:可配置属性“copts”与此配置不匹配构建tensorflow时

时间:2017-09-18 06:48:39

标签: tensorflow bazel

当我在Ubuntu上构建tensorflow时,我遇到了错误日志,如下所示:

ERROR: /home/ubuntu/.cache/bazel/_bazel_ubuntu/ad1e09741bb4109fbc70ef8216b59ee2/external/nsync/BUILD:401:13: Configurable attribute "copts" doesn't match this configuration (would a default condition help?).
Conditions checked:
 @nsync//:android_arm
 @nsync//:android_arm64
 @nsync//:android_armeabi
 @nsync//:android_x86_32
 @nsync//:android_x86_64
 @nsync//:clang_macos_x86_64
 @nsync//:gcc_linux_aarch64
 @nsync//:gcc_linux_ppc64
 @nsync//:gcc_linux_x86_64_1
 @nsync//:gcc_linux_x86_64_2
 @nsync//:ios_x86_64
 @nsync//:msvc_windows_x86_64.
ERROR: Analysis of target '//tensorflow/tools/pip_package:build_pip_package' failed; build aborted.

环境是Linux pine64 3.10.104-2-pine64-longsleep,它运行在armv8.with bazel 0.4.5我按照说明构建

bazel build -c opt --copt="-funsafe-math-optimizations" --copt="-ftree-vectorize" --copt="-fomit-frame-pointer" --verbose_failures tensorflow/tools/pip_package:build_pip_package

有谁知道如何解决它?我非常感谢你们,非常感谢你们。

1 个答案:

答案 0 :(得分:1)

问题是bazel无法识别nsync的BUILD中select次调用的cpu。它发生在这里:https://github.com/google/nsync/blob/master/BUILD#L130。修复方法是将"//conditions:default": [],添加到所有相关选项中,或者使用您的cpu值添加另一个config_setting。 bazel会在任何地方输出你的cpu值吗?