我正在尝试使用CentOs6上的EasyBuild编译tensorflow,但Bazel正在捕获错误的binutils目录,不幸的是一个硬编码的,以错误的汇编程序结束。
如果我尝试修补硬编码的“-B / usr / bin”链接器bazel稍后会告诉我错误......
“找%(builddir)s / -type f | grep \”cpp / CROSSTOOL \“| xargs -n 1 sed -i \”s | -B / usr / bin / | -B $ EBROOTBINUTILS | \“
错误:安装损坏:文件_embedded_binaries / embedded_tools / tools / cpp / CROSSTOOL'已修改。请删除'install / c3fbdea9fb934f1ff0d8172c25d0dab2',然后重试。 (在pabu_cmd_output中的easybuild / tools / run.py:469)
我花了一些时间来看看是否有办法跳过那些愚蠢的校验和测试,或重新计算校验和,但它对用户来说真的不透明。
任何想法如何解决这个问题?
答案 0 :(得分:1)
是的,将文件的mtime设置为未来10年:
touch -m -t 202712120101 path/to/file
编辑:Bazel检查安装文件的mtimes的原因是为了避免意外更改它们。如果您知道自己在做什么,即故意修补CROSSTOOL文件,那么这就是规避检查的方法。