spack期望<commit>但得到<commit>

时间:2017-11-08 23:11:04

标签: python macos unix md5 spack

我想用spack安装nalu。我的安装失败,出现了一个神秘的错误消息:

$ spack clean nalu
==> Cleaning build stage [nalu@master%clang@8.1.0-apple build_type=RelWithDebInfo ~openfast arch=darwin-sierra-x86_64 /5vijzp7]

$ spack install nalu
==> pkg-config is already installed in /Users/kilojoules/spack/opt/spack/darwin-sierra-x86_64/clang-8.1.0-apple/pkg-config-0.29.2-72rz43flet5qcqtnx6zimnqy4ilk3tys
 ......
==> superlu is already installed in /Users/kilojoules/spack/opt/spack/darwin-sierra-x86_64/clang-8.1.0-apple/superlu-4.3-yveqzmkbbuutdcdj27m5cyyqlchwzvql
==> trilinos is already installed in /Users/kilojoules/spack/opt/spack/darwin-sierra-x86_64/clang-8.1.0-apple/trilinos-12.12.1-ff27cjskjbktug3ubqwdg5izvutewyjj
==> Installing yaml-cpp
==> Already downloaded /Users/kilojoules/spack/var/spack/stage/yaml-cpp-0.5.3-x7shbh5adkjvzxrjmfdlppt3ka5v6moy/yaml-cpp-0.5.3.tar.gz
==> Error: ChecksumError: md5 checksum failed for /Users/kilojoules/spack/var/spack/stage/yaml-cpp-0.5.3-x7shbh5adkjvzxrjmfdlppt3ka5v6moy/yaml-cpp-0.5.3.tar.gz
    Expected 4e47733d98266e46a1a73ae0a72954eb but got 2bba14e6a7f12c7272f87d044e4a7211
ChecksumError: ChecksumError: md5 checksum failed for /Users/kilojoules/spack/var/spack/stage/yaml-cpp-0.5.3-x7shbh5adkjvzxrjmfdlppt3ka5v6moy/yaml-cpp-0.5.3.tar.gz
    Expected 4e47733d98266e46a1a73ae0a72954eb but got 2bba14e6a7f12c7272f87d044e4a7211

/Users/kilojoules/spack/lib/spack/spack/package.py:997, in do_fetch:
     29            self._fetch_time = time.time() - start_time
     30    
     31            if spack.do_checksum and self.version in self.versions:
  >> 32                self.stage.check()
     33    
     34            self.stage.cache_local()

我尝试转到相关文件夹并检查其预期的提交但我在/Users/kilojoules/spack/var/spack/stage/yaml-cpp-0.5.3-x7shbh5adkjvzxrjmfdlppt3ka5v6moy中找不到版本控制规范。

这意味着什么?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

此错误消息表示Spack下载了yaml-cpp-0.5.3.tar.gz tarball,但此tarball的校验和与package.py中列出的校验和不匹配。

在这种情况下,发生的事情是您下载了yaml-cpp,然后GitHub更改了它们的自动tarball生成算法,然后在上游更新了package.py中的校验和。有关更多信息,请参见https://github.com/spack/spack/pull/6924

要解决您的问题,请手动删除tarball或运行spack clean --downloads删除所有缓存的tarball。

P.S。 Spack当前在StackOverflow上不是很活跃。您最好先问GitHubSlack