cygwin: "fmemopen" 未在此范围内声明

cygwin: "fmemopen" was not declared in this scope

我在 Windows 下使用 cygwin 运行 SCIP。但是,当我使用 make 到 运行 安装时,cygwin 报告

"fmemopen" was not declared in this scope

tmpStream = fmemopen(tmpString, 63, "w");

我认为当我尝试在 cygwin 包管理器中为 ZLIB 安装包时出现了问题,但我不确定如何处理该错误?

显然,由于某些原因,使用 cygwin 时未设置标志 _WIN32_WIN64。您可以手动调整相应的子 makefile make.cygwin.x86.gnumake.cygwin.x86_64.gnu in soplex-2.2.1/make/:

只需在第一行分别添加-D_WIN32-D_WIN64,扩展CPPFLAGS参数。

您也可以通过 运行 make LEGACY=true.

尝试在没有 SoPlex 的理性求解能力的情况下进行编译