首页 文章

编译SCIP:找不到'spxsolver.h'文件

提问于
浏览
1

我正在尝试使用以下命令编译SCIP:

make ZLIB=false READLINE=false GMP=false

任何人都知道如何处理这个问题?

-> compiling obj/O.darwin.x86_64.gnu.opt/lib/objscip/objsepa.o
-> compiling obj/O.darwin.x86_64.gnu.opt/lib/objscip/objvardata.o
-> generating library lib/libobjscip-3.1.1.darwin.x86_64.gnu.opt.a
-> compiling obj/O.darwin.x86_64.gnu.opt/lib/lpi/lpi_spx.o
src/lpi/lpi_spx.cpp:76:10: fatal error: 'spxsolver.h' file not found
#include "spxsolver.h"
         ^
1 error generated.
make[1]: *** [obj/O.darwin.x86_64.gnu.opt/lib/lpi/lpi_spx.o] Error 1
make: *** [libs] Error 2

注意:我使用的是Mac OS X Yosemite 10.10.3

2 回答

  • 2

    问题是我正在安装 scip-3.1.1.tgz 而不是 scipoptsuite-3.1.1.tgz . 在 scipoptsuite-3.1.1.tgz 上运行 make 运行完全正常 .

  • 0

    SCIP使用外部LP解算器(例如SoPlex(默认情况下))作为基础LP求解器 . LP编译器需要在编译时链接 . 这是你如何做到这一点:

    • 下载并解压缩SoPlex并将其编译在单独的目录中,例如 ~/soplex

    • 将SoPlex链接到SCIP . 最简单的方法是从SCIP目录中调用 make links

    有关详细信息,请参阅Installation guide of SCIP,尤其是第1步的示例 .

相关问题