“以确定性模式创建”错误

N.E*_*.E. 6 make software-installation

对于粒子物理项目(micromegas),我不得不解压 .tgz,然后在其中运行“make”(按照本教程https://lapth.cnrs.fr/micromegas/)。

我首先使用以下方法解压:

tar -zxvf micromegas_4.3.4.tgz
Run Code Online (Sandbox Code Playgroud)

然后我获得了一个文件夹micromegas_4.3.4,我在其中运行make

cd micromegas_4.3_4
make
Run Code Online (Sandbox Code Playgroud)

在过程结束时,终端可用于下一个指令,但在其最后一条消息中提到:

'../lib/micromegas.a' seems to have been created in deterministic mode. 
'limits.o' will always be updated. 
Please consider passing the U flag to ar to avoid the problem.
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题(据说使用非确定性模式?)?

此安装过程还有后续步骤,但目前我只想确保我的文件夹micromegas_4.3.4已使用 准确编译make,如果没有,我需要将哪些其他包/辅助文件添加到我的 Ubuntu 平台。

从根本上说,我只是在编译解压缩文件夹的内容。然后应该可以使用命令行(不涉及 GUI)来进行物理计算。

(顺便说一下,这是在 Windows 10 中的 VirtualBox 上运行的 Ubuntu 17.04。)

Dav*_*ter 4

来自的消息ar是有关构建过程的通知,而不是错误消息。据我理解,这意味着修改后重建软件可能需要比必要的时间更长的时间;完全不用担心。


res*_*epo 2

该问题是由于 ar 命令的行为发生变化造成的,该命令现在使用 --enable-definistic-archives 配置(请参阅此处此处)。

一个可能的解决方案是重新定义 ar 标志的全局变量,以使用 U 选项禁用确定性存档。在 make 命令之前的控制台中,设置

导出 ARFLAGS=rvU