debugging - 如何使用调试模式在 tensorflow 中构建一些数据包\
问题描述
遇到了想调试的问题,然后想构建一个调试版的tensorflow,使用如下命令: bazel build --compilation_mode=dbg -s //tensorflow/tools/pip_package:build_pip_package
但它会触发protobuf中的长期链接几乎一天,但仍未完成。
我的意图是构建 tensorflow 使用的其他带有调试模式的包,我可以配置 bazel 构建文件以单独获取一些调试包吗?
解决方案
要更好地理解问题,请尝试手动运行永无止境的操作:
- 开始调试构建,等待它卡在 protobuf 链接操作中
- 中断构建 (Ctrl+C)
- 使用标志再次运行构建
-s
,因此 Bazel 显示了它执行的命令行(您可以使用-s
标志运行第 1 步,但是输出更多,并且更难找到正确的信息) - 再次中断构建
cd
进入 by 命令显示的目录并设置环境变量- 尝试运行失败的命令(您可能需要更改输出路径,因为它们有时不是用户可写的)并查看它是否仍然无法完成
您刚刚所做的是运行 Bazel 正在运行的相同命令并被卡住。如果命令也卡在此手动模式下,则错误可能与链接器有关(但我怀疑是这种情况)。但如果它成功了,那么问题就出在 Bazel 身上。
推荐阅读
- excel - 我如何在 VBA 宏中告诉 MS Word,如果它找到“文本”,它应该在“文本 2”下面写我
- javascript - React - 单击按钮时禁用行
- django - 使用自定义数据类型归档的 Django Rest Framework Seralize 持续时间
- oracle - 合计一个组内的金额并且不包括重复值
- python - 如何使用@符号来装饰python中的函数
- c# - 搜索控件。C#、WinForms、用户控件
- python - 此平台不支持 XX-cp36-cp36m-linux_x86_64.whl
- mysql - 两个参数之一满足(一个,或另一个,或两者)
- php - 一个字符串中的 POST 数组,用逗号分隔 PHP
- python - 不明白这个 ValueError 的原因