[SCIP] [ITDS-Warning: SPAM] Building SCIP & MinIISC on Windows

Andrea Gavana andrea.gavana at gmail.com
Wed Mar 26 08:29:22 CET 2025


Hello Marc,

Thank you for your super-quick answer, I appreciate it very much.

I have removed the READLINE requirement as you suggested. While the
compilation process finishes (100%), the linker fails without any
meaningful message that I can see (even using --verbose as a linker
argument).

It simply says: collect2.exe: error: ld returned 5 exit status

Below is the ending part of the linking process, obtained via the --verbose
input to the linker. I have a build log with the entirety of the
compilation process, but it's 500 kb and I am not sure if it's frowned upon
to attach these types of files to the mailing list or not.

I cannot see any compilation error, only some warnings like these:

C:\Users\USER\Downloads\scipoptsuite-9.2.1\scipoptsuite-9.2.1\scip\src\blockmemshell\memory.c:2411:14:
warning: ISO C does not support the 'I64' ms_printf length modifier
[-Wformat=]
C:/Users/USER/Downloads/scipoptsuite-9.2.1/scipoptsuite-9.2.1/scip/src/scip/def.h:106:20:
warning: redundant redeclaration of 'int _stricmp(const char*, const
char*)' in same scope [-Wredundant-decls]

They seem harmless (to me).

I am using MinGW64 11.2.0 from WinLibs, and until now I have never had any
issue in building C programs or C extensions using it...

Any suggestion is most welcome, thank you in advance.


[100%] Linking CXX shared library ..\..\bin\libscip.dll

Using built-in specs.
COLLECT_GCC=C:\Users\USER\Tools\MinGW64\bin\g++.exe
COLLECT_LTO_WRAPPER=c:/users/USER/tools/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/lto-wrapper.exe
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-w64-mingw32
Configured with: ../configure
--prefix=/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc
--build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
--enable-offload-targets=nvptx-none --with-pkgversion='MinGW-W64
x86_64-ucrt-posix-seh, built by Brecht Sanders' --with-tune=generic
--enable-checking=release --enable-threads=posix --disable-sjlj-exceptions
--disable-libunwind-exceptions --disable-serial-configure
--disable-bootstrap --enable-host-shared --enable-plugin
--disable-default-ssp --disable-rpath --enable-libstdcxx-pch
--enable-libstdcxx-time=yes --disable-libstdcxx-debug
--disable-version-specific-runtime-libs --with-stabs --disable-symvers
--enable-languages=c,c++,fortran,lto,objc,obj-c++,d,jit --disable-gold
--disable-nls --disable-stage1-checking --disable-win32-registry
--disable-multilib --enable-ld --enable-libquadmath --enable-libada
--enable-libssp --enable-libstdcxx --enable-lto
--enable-fully-dynamic-string --enable-libgomp --enable-graphite
--enable-mingw-wildcard --with-mpc=/d/Prog/winlibs64_stage/custombuilt
--with-mpfr=/d/Prog/winlibs64_stage/custombuilt
--with-gmp=/d/Prog/winlibs64_stage/custombuilt
--with-isl=/d/Prog/winlibs64_stage/custombuilt --enable-install-libiberty
--enable-__cxa_atexit --without-included-gettext
--with-diagnostics-color=auto --enable-clocale=generic --with-libiconv
--with-system-zlib
--with-build-sysroot=/R/winlibs64_stage/gcc-11.2.0/build_mingw/mingw-w64
CFLAGS=-I/d/Prog/winlibs64_stage/custombuilt/include/libdl-win32
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht
Sanders)
COMPILER_PATH=c:/users/USER/tools/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/;c:/users/USER/tools/mingw64/bin/../libexec/gcc/;c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/
LIBRARY_PATH=c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/;c:/users/USER/tools/mingw64/bin/../lib/gcc/;c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/;c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib/;c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/;c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../
COLLECT_GCC_OPTIONS='-Wno-psabi' '-O3' '-D' 'NDEBUG' '-v' '-v' '-shared'
'-o' '..\..\bin\libscip.dll' '-shared-libgcc' '-mtune=generic'
'-march=x86-64' '-dumpdir' '..\..\bin\libscip.dll.'
 c:/users/USER/tools/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/collect2.exe
-plugin
c:/users/USER/tools/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/liblto_plugin.dll
-plugin-opt=c:/users/USER/tools/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/lto-wrapper.exe
-plugin-opt=-fresolution=C:\Users\USER\AppData\Local\Temp\ccQoBFst.res
-plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname
-plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt
-plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lpthread
-plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32
-plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32
-plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname
-plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt
-plugin-opt=-pass-through=-lkernel32 -m i386pep --shared -Bdynamic -e
DllMainCRTStartup --enable-auto-image-base -o ..\..\bin\libscip.dll
c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/dllcrt2.o
c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtbegin.o
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib
-Lc:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../..
@C:\Users\USER\AppData\Local\Temp\cc8OocJM -lmingw32 -lgcc_s -lgcc
-lmoldname -lmingwex -lmsvcrt -lkernel32 -lpthread -ladvapi32 -lshell32
-luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt
-lkernel32
c:/users/USER/tools/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtend.o
collect2.exe: error: ld returned 5 exit status
mingw32-make[3]: *** [scip\src\CMakeFiles\libscip.dir\build.make:6589:
bin/libscip.dll] Error 1
mingw32-make[3]: *** Deleting file 'bin/libscip.dll'
mingw32-make[2]: *** [CMakeFiles\Makefile2:2114:
scip/src/CMakeFiles/libscip.dir/all] Error 2
mingw32-make[1]: *** [CMakeFiles\Makefile2:2707:
scip/applications/MinIISC/CMakeFiles/miniisc.dir/rule] Error 2
mingw32-make: *** [makefile:1022: miniisc] Error 2


On Tue, 25 Mar 2025 at 22:35, Marc Pfetsch <
pfetsch at mathematik.tu-darmstadt.de> wrote:

>
>
> Hi Andrea,
>
> SCIP does not yet support computing IISs for LPs yet.
>
> MinIISC is for computing a smallest number of constraints that have to
> be removed in order to obtain a feasible problem. (In some sense, this
> is dual to computing IISs.)
>
> However, it is not hard to compute some IISs (although not necessarily
> one of smallest size), by computing a vertex of the alternative
> polyhedron ({y: A^T y = 0, b^T y = -1, y \geq 0} for the original
> infeasible system Ax \leq b.) [The MinIISC code also builds this
> polyhedron and you might want to modify the code to output an IIS.]
>
> For your installation you should install "libreadline-dev" or use
> "-DREADLINE=off" as an argument to the cmake call.
>
> Best
>
> Marc
>
> On 25/03/2025 12:39, Andrea Gavana wrote:
> > Hello SCIP Users,
> >
> > I am a newbie with SCIP - I have used it a few times for simple MIPs and
> > always using the available binaries for Windows 64 bit. I have never
> > compiled it from source.
> >
> > I am now looking for ways to detect IIS in some of my standard,
> > continuous LPs (no MIPs). My understanding is that the MinIISC
> > application can be used for that purpose.
> >
> > Unfortunately, there appear not to be any precompiled binaries for
> > MinIISC (or any other application that is not SCIP). Or at least I
> > couldn't find it anywhere.
> >
> > So I have tried to follow the instructions on building SCIP and MinIISC
> > from the SCIP website, using CMake on Windows and the MinGW64 toolchain
> > (gcc for Windows) 11.2.0. I explicitly specify MinGW Makefiles.
> >
> > The CMake configure action ends like this:
> >
> > The following OPTIONAL packages have been found:
> >
> >
> > * SOPLEX
> >
> > * PkgConfig
> >
> >
> > -- The following REQUIRED packages have been found:
> >
> >
> > * Readline
> >
> > * SCIP
> >
> > * Threads
> >
> > * ZLIB
> >
> >
> > -- The following OPTIONAL packages have not been found:
> >
> >
> > * Boost (required version >= 1.65.0)
> >
> > * PAPILO
> >
> > * ZIMPL (required version >= 3.5.0)
> >
> > * IPOPT (required version >= 3.12.0)
> >
> > * WORHP
> >
> > * CRITERION
> >
> > * GSL (required version >= 2.0)
> >
> > * GMP
> >
> > * CLIQUER
> >
> >
> > Configuring done
> >
> >
> >
> > After the "generate" from CMake, I naively attempted this:
> >
> > cmake.exe --build build --target miniisc
> >
> > I get this:
> >
> > C:\Users\XXXX\scipoptsuite-9.2.1\scip\src\scip\dialog.c:48:10: fatal
> > error: readline/readline.h: No such file or directory
> >     48 | #include <readline/readline.h>
> >        |          ^~~~~~~~~~~~~~~~~~~~~
> > compilation terminated.
> > mingw32-make[3]: *** [scip\src\CMakeFiles\libscip.dir\build.make:3751:
> > scip/src/CMakeFiles/libscip.dir/scip/dialog.c.obj] Error 1
> > mingw32-make[2]: *** [CMakeFiles\Makefile2:2114:
> > scip/src/CMakeFiles/libscip.dir/all] Error 2
> > mingw32-make[1]: *** [CMakeFiles\Makefile2:2707:
> > scip/applications/MinIISC/CMakeFiles/miniisc.dir/rule] Error 2
> > mingw32-make: *** [makefile:1022: miniisc] Error 2
> >
> > I do have a readline-kind-of for Windows, that I obtained
> > from mingw-w64-x86_64-readline, but I guess I must be doing something
> > wrong somewhere. I am not an expert in compiling packages, so I am kind
> > of lost here.
> >
> > I assume there aren't many people having a pre-compiled executable for
> MinIISC on Windows, but if anyone does, please do let me know - I'd be
> rather interested in giving it a try using some LP files I already have. Or
> any other suggestion you may have to help me fix the build issue would be
> most appreciated.
> >
> >
> > Thank you in advance.
> >
> >
> > Andrea.
> >
> >
> >
> >
> > _______________________________________________
> > Scip mailing list
> > Scip at zib.de
> > https://listserv.zib.de/mailman/listinfo/scip
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20250326/cbfe8096/attachment.html>


More information about the Scip mailing list