[SCIP] [ITDS-Warning: SPAM] Building SCIP & MinIISC on Windows
Andrea Gavana
andrea.gavana at gmail.com
Wed Mar 26 20:33:04 CET 2025
Hello Mark & SCIP users,
I managed to compile MinIISC by dropping the ZLIb requirements.
I am feeding it with an LP file containing a model I know to be infeasible
and I am getting the output I paste below. I am unclear though how to
interpret the output - what is MinIISC telling me? Where do I find the
offending constraints? Is there any way to output that information in a
file?
My apologies if I am misunderstanding everything here.
Andrea.
-----------------
Output of MinIISC
-----------------
C:\Users\USER\MyProjects>miniisc.exe infeasible_118.lp -s scip.set
Finding a minimum IIS cover using a set covering approach.
Implemented by Marc Pfetsch, 2015
SCIP version 9.2.1 [precision: 8 byte] [memory: block] [mode: optimized]
[LP solver: Soplex 7.1.3] [GitHash: 0d2d3c7c2d]
Copyright (c) 2002-2025 Zuse Institute Berlin (ZIB)
reading user parameter file <scip.set> ...
display/verblevel = 5
display/freq = 1
display/lpinfo = TRUE
Input file: infeasible_118.lp
Problem name: infeasible_118
original problem has 3378 variables (0 bin, 0 int, 0 impl, 3378 cont) and
3804 constraints
Using reoptimization.
Optimally solving master problem ...
time | niter |nconss | nvars |master|totalnodes|oracle| ncuts |
dualbound
SCIP Status : problem is solved [optimal solution found]
Solving Time (sec) : 0.00
Solving Nodes : 0 (total of 0 nodes in 1 runs)
Primal Bound : +0.00000000000000e+00
Dual Bound : -1.00000000000000e+20
Gap : infinite
SCIP Status : problem is solved [optimal solution found]
Total Time : 0.00
solving : 0.00
master : 0.00 (included in solving)
oracle : 0.00 (included in solving)
Original Problem :
Problem name : infeasible_118
Variables : 6331 (6331 binary, 0 integer, 0 implicit integer, 0
continuous)
Constraints : 1 initial, 0 maximal
Objective sense : minimize
Presolved Problem :
Problem name : infeasible_118
Variables : 6331 (6331 binary, 0 integer, 0 implicit integer, 0
continuous)
Constraints : 0 initial, 0 maximal
Constraints : Number MaxNumber #Separate #Propagate #EnfoLP
#EnfoPS #Check #ResProp Cutoffs DomReds Cuts
Applied Conss Children
benders : 1 1 0 0 0
0 0 0 0 0 0
0 0 0
Constraint Timings : TotalTime SetupTime Separate Propagate EnfoLP
EnfoPS Check ResProp SB-Prop
benders : 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00
B&B Tree :
number of runs : 1
nodes (total) : 0
Solution :
Primal Bound : +0.00000000000000e+00
Dual Bound : -1.00000000000000e+20
Gap : infinite
On Wed, 26 Mar 2025 at 08:29, Andrea Gavana <andrea.gavana at gmail.com> wrote:
> 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/b85c151c/attachment.html>
More information about the Scip
mailing list