【发布时间】:2016-09-02 06:17:56
【问题描述】:
这是一个具体的问题,但是,我无法在 Fedora 23 中获得 cmake 和 make 来编译 Yet Another Prolog。克隆了 Github 上的最新 repo,YAP 6.3.4。我的朋友在他的 Funtoo Linux 上运行 cmake 并在相同的克隆上成功地制作。当我在 Fedora 23 上运行它们时,我会遇到奇怪的错误,这些错误只有在缺少 CUDD 头文件时才有意义,但 CUDD 是与头文件一起安装的。
我希望任何人都有足够的经验来解释为什么 cmake 生成的 Makefile 无法在一个 Linux 系统上编译而在另一个 Linux 系统上编译。
这是一个 make 错误示例(使用 cmake 制作的 Makefile 没有错误)。 “未知”类型名称位于我的系统上安装的 CUDD 标头中。源文件 cplint 应该是使用 CUDD 构建的
% YAP 6.3.4-76638bb7 (compiled 2016-09-01T01:01:57@dhcp-129-8-62-64)
In file included from /home/safulop/yap-6.3/packages/cplint/cplint_yap.c:15:0:
/home/safulop/yap-6.3/packages/cplint/cplint.h:41:3: error: unknown type name ‘DdNode’
DdNode * * booleanVars;
^
/home/safulop/yap-6.3/packages/cplint/cplint.h:54:3: error: unknown type name ‘DdNode’
DdNode *key;
^
/home/safulop/yap-6.3/packages/cplint/cplint.h:64:33: error: unknown type name ‘DdManager’
variables createVars(YAP_Term t,DdManager * mgr, int create_dot,
^
/home/safulop/yap-6.3/packages/cplint/cplint.h:69:1: error: unknown type name ‘DdNode’
DdNode * retFunction(DdManager * mgr, expr expression,variables v);
^
/home/safulop/yap-6.3/packages/cplint/cplint.h:69:22: error: unknown type name ‘DdManager’
DdNode * retFunction(DdManager * mgr, expr expression,variables v);
^
/home/safulop/yap-6.3/packages/cplint/cplint.h:70:1: error: unknown type name ‘DdNode’
DdNode * retTerm(DdManager * mgr,term t,variables v);
^
【问题讨论】:
标签: makefile cmake fedora-23 yap