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

Compiling SCIP: 'spxsolver.h' file not found

我正在尝试使用以下命令编译 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

SCIP 使用外部 LP 求解器,例如 SoPlex(默认情况下)作为基础 LP 求解器。 LP 求解器需要在编译时链接进来。以下是您的操作方法:

  1. 下载并解压 SoPlex 并将其编译到单独的目录中,例如 ~/soplex
  2. Link SoPlex 进入 SCIP。最简单的方法是从您的 SCIP 目录
  3. 调用 make links

请参阅Installation guide of SCIP了解更多详情,尤其是步骤示例 1。

问题是我安装的是 scip-3.1.1.tgz 而不是 scipoptsuite-3.1.1.tgz。 运行 makescipoptsuite-3.1.1.tgz 上运行得很好。