【问题标题】:build syntaxnet with bazel: pywrap error使用 bazel 构建语法网络:pywrap 错误
【发布时间】:2016-07-11 07:53:17
【问题描述】:

我正在尝试使用没有 root 权限的 bazel 构建语法网络。我已经下载了 bazel 0.2.2b 并按照其网站上的建议提取了 syntaxnet git 存储库。我已经设法为 bazel 构建 pass the new gcc 并将我的环境变量设置为包括本地 gcc 以及我的本地 python 版本(2.7)。我还在PATH 中添加了 swig 和 jdk。尽管如此,我在尝试运行bazel test syntaxnet/... util/utf8/... 时仍出现以下错误:

INFO: Found 65 targets and 12 test targets... ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: output 'external/org_tensorflow/tensorflow/python/pywrap_tensorflow.cc' was not created. ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: output 'external/org_tensorflow/tensorflow/python/pywrap_tensorflow.py' was not created. ERROR: /home/davba/.cache/bazel/_bazel_debauscd/33ff1ccf943e8d1167bc44c81c9ea8f4/external/org_tensorflow/tensorflow/python/BUILD:1023:1: not all outputs were created.

之后,没有运行任何测试,这意味着跳过所有十二个测试。任何想法都受到高度赞赏。

编辑:我意识到我使用的是旧版本的 protobuf。不幸的是,即使更新后问题仍然存在。

由于这似乎是一个与 python 相关的问题,并且我从源代码构建了 python,所以我尝试使用 anaconda,但最终遇到了同样的错误。

更多信息:我使用的是 CentOS 6.5 并尝试了 python 2.7.11。 我设置环境变量如下,并更改了用于构建bazelaccordingly的CROSSTOOL文件:

CXX=/soft/csw/linux64/rel6/gccs-4.8.5/bin/c++

CC=/soft/csw/linux64/rel6/gccs-4.8.5/bin/gcc

LDFLAGS="-L/soft/csw/linux64/rel6/gccs-4.8.5/lib -L/soft/csw/linux64/rel6/gccs-4.8.5/lib64":"-L/home/davba/syntaxnet-utils/pcre/lib"

CXXFLAGS="-L/soft/csw/linux64/rel6/gccs-4.8.5/lib -L/soft/csw/linux64/rel6/gccs-4.8.5/lib64"

LD_LIBRARY_PATH=/soft/csw/linux64/rel6/gccs-4.8.5/lib:/soft/csw/linux64/rel6/gccs-4.8.5/lib64:/home/davba/AnacondaPython/lib:$LD_LIBRARY_PATH

SWIG_PATH=/home/davba/syntaxnet-utils/compiled-swig/bin

谢谢!

【问题讨论】:

  • 您可以运行bazel test --verbose_failures syntaxnet/... util/utf8/... 并将输出粘贴到您的问题中吗?
  • 添加--verbose_failuresoption 似乎不会改变错误输出。对于所有测试,我仍然收到相同的三个错误和 NO STATUS 消息。但是,我注意到我使用的是旧版本的 protobuf。我会尝试更新并再次运行它。

标签: python-2.7 build bazel syntaxnet


【解决方案1】:

我尝试在另一台装有 CentOS 7.0 的机器上运行它,但最终还是遇到了同样的错误。

最后,我有机会切换到具有 sudo 权限的 Ubuntu 机器,这使我能够运行 bazel 安装程序并毫无问题地编译 syntaxnet。这解决了我的问题。对于“真正的”修复,我认为我们必须等待遇到同样问题的人。

【讨论】:

    猜你喜欢
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多