尝试构建 ecolab 时出现“没有此文件或目录”

尝试构建 ecolab 时出现“没有此文件或目录”

我正在尝试构建 ecolab.5.D19,但即使目录和文件存在,并且我与 MAKEFILE 位于同一文件夹中,我也会收到错误消息“没有这样的文件或目录”。我使用以下命令,这是安装指南中建议的:

sudo make install PREFIX=/usr/local/ecolab

我收到如下错误:

ecolab.5.D19/include/Makefile.config: No such file or directory
Makefile:165: src/automorph.d: No such file or directory
Makefile:165: src/auxil.d: No such file or directory
Makefile:165: src/arrays.d: No such file or directory
Makefile:165: src/sparse_mat.d: No such file or directory etc.

然后它就冻结了:

rm: cannot remove 'functiondb.h': No such file or directory
make[1]: [functiondb.h] Error 1 (ignored)
sh functiondb.sh >functiondb.h

所有这些文件都在那里。

我有 ubuntu 14.04 64 位版本,内核为 3.13.0-39-lowlatency,似乎在 64 位系统上安装 32 位程序时会出现此问题。我安装了 32 位库,但问题没有解决。依赖项应该没问题。我正在尝试安装 minksy——它需要 ecolab。感谢您的时间。:)

答案1

当前的问题似乎是该functiondb.sh脚本使用了 bash 功能,但调用它的 Makefile 明确使用了此功能sh(并且 /bin/sh 是 Ubuntu 中 dash 的符号链接)。具体来说,++后缀运算符不受支持,因此计数器不会递增,并且脚本会陷入 while 循环中。

您可以临时将 /bin/sh 符号链接到 bash,或者修改 /classdesc/Makefile,替换

functiondb.h: functiondb.sh
    -rm $@
    sh $< >$@

经过

functiondb.h: functiondb.sh
    -rm $@
    bash $< >$@

相关内容