Я пытался скомпилировать и установить SCIP под Linux, но в конце процесса компиляции появляется следующая ошибка ….
** Build complete.
** Find your SCIP binary in "/home/carloserwin/Documents/scipoptsuite-4.0.0/scip-4.0.0/bin".
** Enter "make test" to solve a number of easy instances in order to verify that SCIP runs correctly.
make[2]: Leaving directory '/home/carloserwin/Documents/scipoptsuite-4.0.0'
make[1]: Leaving directory '/home/carloserwin/Documents/scipoptsuite-4.0.0'
make[1]: Entering directory '/home/carloserwin/Documents/scipoptsuite-4.0.0'
ar: /home/carloserwin/Documents/scipoptsuite-4.0.0/zimpl-3.3.4/obj/O.linux.x86.gnu.shared.opt/blkmem.o: No such file or directory
make[1]: *** [Makefile.doit:238: scipoptlib] Error 1
make[1]: Leaving directory '/home/carloserwin/Documents/scipoptsuite-4.0.0'
make: *** [Makefile:98: scipoptlib] Error 2
когда я пишу «сделать тест», почти каждый тест не проходит. После нескольких попыток в Linux безуспешно, я попытался скомпилировать в Mac, и она работала отлично, и все тесты в порядке. Но мне нужно заставить его работать на Linux.
версия gcc 7-2.1
ОС Linux openSUSE Tumbleweed, KDE 5.10.3
32-битный
Похоже, что make-файл scipoptlib использует неправильный каталог для поиска объектов zimpl. Кажется, во внутренней версии разработки есть какое-то исправление, возможно, это поможет:
diff --git a/Makefile.doit b/Makefile.doit
index 344f0ee..1d8077e 100644
--- a/Makefile.doit
+++ b/Makefile.doit
@@ -65,7 +65,7 @@ ZIMPLOBJECTS = blkmem.o bound.o code.o conname.o define.o elem.o entry.ifeq ($(ZIMPL),true)
-SCIPOPTOBJFILES += $(addprefix $(ZIMPLDIR)/obj/O.$(OSTYPE).$(ARCH).$(COMP).shared.$(ZIMPLOPT)/,$(ZIMPLOBJECTS))
+SCIPOPTOBJFILES += $(addprefix $(ZIMPLDIR)/obj/O.$(OSTYPE).$(ARCH).$(COMP).$(LIBTYPE).$(ZIMPLOPT)/,$(ZIMPLOBJECTS))
endif
ifeq ($(LIBBUILD),$(LINKCC))
Других решений пока нет …