Herwig 引导脚本安装

问题描述 投票:0回答:1

使用 bootstrap script 方法安装 Herwig 时,出现错误,

Making all in .
  CXX      libYODA_la-Reader.lo
  CXX      libYODA_la-ReaderYODA.lo
In file included from ../include/YODA/Reader.h:9,
                 from Reader.cc:6:
../include/YODA/AnalysisObject.h: In member function ‘void YODA::AnalysisObject::setAnnotation(const std::string&, double)’:
../include/YODA/AnalysisObject.h:160:36: error: ‘numeric_limits’ is not a member of ‘std’
  160 |       ss << std::setprecision(std::numeric_limits<double>::max_digits10) << std::scientific << value;                          
      |                                                                  
make[2]: *** [Makefile:577: libYODA_la-Reader.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [Makefile:584: libYODA_la-ReaderYODA.lo] Error 1
make[1]: *** [Makefile:736: all-recursive] Error 1
make: *** [Makefile:515: all-recursive] Error 1
Traceback (most recent call last):
  File "./herwig-bootstrap", line 921, in <module>
    compile([] if opts.yoda_root else ['--disable-root'])
  File "./herwig-bootstrap", line 611, in compile
    check_call(["make","-s","-j%s" % opts.ncore])
  File "./herwig-bootstrap", line 490, in check_call
    subprocess.check_call(arglist)
  File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make', '-s', '-j2']' returned non-zero exit status 2

如何解决这个问题? 我正在尝试安装 Herwig7(粒子物理学中的事件生成器)。

c++ makefile
1个回答
0
投票

该引导脚本默认尝试安装 YODA 1.8.1。

YODA 1.9.0 的变更日志包含以下内容:

2021-03-26  Andy Buckley  <[email protected]>

    * Add <limits> header include to AnalysisObject.h to support GCC11
    (cf. http://gcc.gnu.org/gcc-11/porting_to.html)

您可以通过在第 173 行更改默认版本或使用

--with-yoda-ver=1.9.0
调用引导脚本来修复此问题(或更高版本,截至 2022 年 5 月,版本最高为 1.9.5)。

更好的是,您应该向这个“Herwig”项目提交问题或补丁,并告诉他们更新其依赖项。

© www.soinside.com 2019 - 2024. All rights reserved.