sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.47k stars 487 forks source link

Upgrade scipoptsuite to 4.0 #22557

Closed mkoeppe closed 7 years ago

mkoeppe commented 7 years ago

This ticket upgrades scipoptsuite to version 4.0.0.

On Mac OS X, the install script works around a compiler problem with GCC 5.4.0 leading to segfaults in the testsuite of SCIP. The backtrace shows that this happens during a call to Soplex, which ultimately leads to stack_not_16_byte_aligned_error. The exact reason is unknown, but it is unrelated to GMP, and it only occurs with SHARED=true builds. In the previous version, this problem also existed but could be worked around by building the OPT=dbg version instead of the OPT=opt version. This workaround is no longer sufficient. Instead, the script uses the Apple LLVM compiler; we now use OPT=opt.

Upstream archive: http://scip.zib.de/download.php?fname=scipoptsuite-4.0.0.tgz (DO NOT put on sage servers -- we cannot redistribute this archive)

CC: @mo271

Component: packages: optional

Keywords: days84

Author: Matthias Koeppe

Branch/Commit: a8b5ccf

Reviewer: Moritz Firsching

Issue created by migration from https://trac.sagemath.org/ticket/22557

mkoeppe commented 7 years ago

Description changed:

--- 
+++ 
@@ -1,2 +1,4 @@
 http://scip.zib.de/#download

+http://scip.zib.de/download.php?fname=scipoptsuite-4.0.0.tgz  (Cannot redistribute)
+
mkoeppe commented 7 years ago

Branch: u/mkoeppe/upgrade_scipopt_to_4_0

mkoeppe commented 7 years ago

New commits:

68cd0e1Update patches and script for 4.0.0
mkoeppe commented 7 years ago

Author: Matthias Koeppe

mkoeppe commented 7 years ago

Changed keywords from none to days84

mkoeppe commented 7 years ago

Commit: 68cd0e1

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

417f036Update patches and script for 4.0.0
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 68cd0e1 to 417f036

mo271 commented 7 years ago
comment:5

I tried to install this package, but got this error:

h,/home/mo/sage/local/lib  -lz -lgmp -lreadline -lncurses -o bin/scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none \
    || (make errorhints && false)
lib/shared/liblpispx2-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_vptr_type_cache'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_divrem_overflow'
lib/shared/liblpispx2-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_load_invalid_value'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_mul_overflow'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_shift_out_of_bounds'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `SCIPtpiCollectJobs'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `SCIPtpiExit'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_sub_overflow'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_float_cast_overflow'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_type_mismatch'
lib/shared/liblpispx2-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_dynamic_type_cache_miss'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `SCIPtpiCreateJob'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `SCIPtpiSumbitJob'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_out_of_bounds'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_nonnull_arg'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `SCIPtpiInit'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_negate_overflow'
lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so: undefined reference to `__ubsan_handle_add_overflow'
collect2: error: ld returned 1 exit status
make[4]: Entering directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
build failed with READLINE=true: if readline is not available, try building with READLINE=false
build failed with ZLIB=true: if ZLIB is not available, try building with ZLIB=false
build failed with GMP=true: if GMP is not available, try building with GMP=false (note that this will deactivate Zimpl support)
make[4]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
Makefile:1093: recipe for target 'bin/scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none' failed
make[3]: [bin/scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none] Error 1 (ignored)
cd bin/ && ln -s scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none scip.linux.x86_64.gnu.dbg.spx2.none
cd bin/ && ln -s scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none scip
make[3]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
-> install SCIP binary into INSTALLDIR </home/mo/sage/local>
install: cannot stat 'bin/scip-4.0.0.linux.x86_64.gnu.dbg.spx2.none': No such file or directory
make/make.install:70: recipe for target 'installbinary' failed
make[2]: [installbinary] Error 1 (ignored)
make[2]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
'libscipopt.so' -> 'libscip.so'
Checking that SCIP starts
./spkg-install: line 167: /home/mo/sage/local/bin/scip: No such file or directory
SCIP build completed but the scip executable does not work.

real    21m38.205s
user    20m0.144s
sys 0m31.668s
************************************************************************
Error installing package scipoptsuite-4.0.0
************************************************************************

I merged your patch with the current sage version 7.6.rc0. (I hope thats not causing the problem)

I am able to compile scip-4.0.0 without using ./sage -i, however, when running "make scipoptlib" I get the following error concerning zimpl. running "make test" produces no error and the scip binary seems to work fine.

Im running a recent install of debian sid.

** Build complete.
** Find your SCIP binary in "/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/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/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src'
make[1]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src'
make[1]: Entering directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src'
ar: /home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/zimpl-3.3.4/obj/O.linux.x86_64.gnu.shared.opt/blkmem.o: No such file or directory
Makefile.doit:238: recipe for target 'scipoptlib' failed
make[1]: *** [scipoptlib] Error 1
make[1]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src'
Makefile:95: recipe for target 'scipoptlib' failed
make: *** [scipoptlib] Error 2
mkoeppe commented 7 years ago
comment:6

OK, looks like I need to change something in my script for Linux. So far I have only tested on Mac OS X.

The "scipoptlib" problem is something to report to upstream.

mo271 commented 7 years ago
comment:7

I reported the "scipoptlib" problem (after unsuccessful debugging)

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 417f036 to 6cc2bd7

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

6cc2bd7Update patches and script for 4.0.0
mo271 commented 7 years ago
comment:9

I am still having trouble installing with this patch, but it seems to go further.

[scipoptsuite-4.0.0] g++ -L/home/mo/sage/local/lib -Wl,-rpath,/home/mo/sage/local/lib  -shared -Wl,-soname=/home/mo/sage/local/lib/libsoplex-3.0.0.linux.x86_64.gnu.dbg.so -Wl,-soname=/home/mo/sage/local/lib/libscip-4.0.0.linux.x86_64.gnu.dbg.so -Wl,-rpath,/home/mo/sage/local/lib -lgmp -lz -lreadline -o lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_allfullstrong.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_cloud.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_distribution.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_fullstrong.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_inference.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_leastinf.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_mostinf.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_multaggr.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_nodereopt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_pscost.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_random.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch_relpscost.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_abspower.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/compr_largestrepr.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/compr_weakcompr.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/concsolver_scip.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_and.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_bivariate.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_bounddisjunction.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_cardinality.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_conjunction.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_countsols.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_cumulative.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_disjunction.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_indicator.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_integral.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_knapsack.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_linear.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_linking.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_logicor.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_nonlinear.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_or.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_orbitope.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_pseudoboolean.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_quadratic.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_setppc.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_soc.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_sos1.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_sos2.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_superindicator.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_varbound.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_xor.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons_components.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/dialog_default.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/event_softtimelimit.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/disp_default.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/event_solvingphase.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_sync.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/event_globalbnd.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_sync.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_actconsdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_bound.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_clique.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_coefdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_completesol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_crossover.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_dins.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_distributiondiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_dualval.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_feaspump.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_fixandinfer.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_fracdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_gins.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_guideddiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_indicator.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_intdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_intshifting.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_linesearchdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_localbranching.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_lpface.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_locks.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_mutation.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_multistart.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_nlpdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_objpscostdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_octane.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_ofins.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_oneopt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_proximity.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_pscostdiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_reoptsols.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_repair.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_randrounding.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_rens.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_rins.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_rootsoldiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_rounding.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_shiftandpropagate.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_shifting.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_simplerounding.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_subnlp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_trivial.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_trivialnegation.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_trysol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_twoopt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_undercover.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_vbounds.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_veclendiving.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_zeroobj.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur_zirounding.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/message_default.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_bfs.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_breadthfirst.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_dfs.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_estimate.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_hybridestim.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_restartdfs.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel_uct.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_boundshift.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_convertinttobin.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_domcol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_dualagg.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_dualcomp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_dualinfer.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_gateextraction.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_implfree.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_implics.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_inttobinary.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_qpkktref.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_redvub.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_trivial.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_tworowbnd.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol_stuffing.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_dualfix.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_genvbounds.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_nlobbt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_obbt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_probing.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_pseudoobj.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_redcost.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_rootredcost.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop_vbounds.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_bnd.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_ccg.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_cip.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_cnf.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_diff.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_fix.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_fzn.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_gms.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_lp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_mps.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_mst.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_opb.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_osil.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_pip.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_pbm.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_ppm.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_rlp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_sol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_wbo.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader_zpl.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_cgmip.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_clique.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_closecuts.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_cmir.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_convexproj.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_disjunctive.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_eccuts.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_flowcover.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_gauge.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_gomory.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_impliedbounds.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_intobj.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_mcf.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_oddcycle.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_rapidlearning.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_strongcg.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa_zerohalf.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/boundstore.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/branch.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/clock.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/concsolver.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/concurrent.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/conflict.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/conflictstore.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cons.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cutpool.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/cuts.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/debug.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/dialog.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/disp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/event.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/fileio.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heur.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/heuristics.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/compr.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/history.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/implics.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/interrupt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/intervalarith.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/lp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/matrix.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/mem.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/misc.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nlp.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/nodesel.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/paramset.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/presolve.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/pricestore.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/pricer.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/primal.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prob.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/prop.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reader.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/relax.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/reopt.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/retcode.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/scip.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/scipbuildflags.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/scipdefplugins.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/scipgithash.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/scipshell.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepa.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sepastore.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/set.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/sol.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/solve.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/stat.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/syncstore.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/tree.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/var.o obj/shared/O.linux.x86_64.gnu.dbg/lib/scip/visual.o obj/shared/O.linux.x86_64.gnu.dbg/lib/tclique/tclique_branch.o obj/shared/O.linux.x86_64.gnu.dbg/lib/tclique/tclique_coloring.o obj/shared/O.linux.x86_64.gnu.dbg/lib/tclique/tclique_graph.o obj/shared/O.linux.x86_64.gnu.dbg/lib/dijkstra/dijkstra.o obj/shared/O.linux.x86_64.gnu.dbg/lib/xml/xmlparse.o -Llib/shared -lz -lgmp  -Wl,-rpath,/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0/lib/shared lib/shared/liblpispx2-4.0.0.linux.x86_64.gnu.dbg.so lib/shared/libnlpi.cppad-4.0.0.linux.x86_64.gnu.dbg.so lib/shared/libtpinone-4.0.0.linux.x86_64.gnu.dbg.so
[scipoptsuite-4.0.0] g++: error: lib/shared/libtpinone-4.0.0.linux.x86_64.gnu.dbg.so: No such file or directory
[scipoptsuite-4.0.0] Makefile:1110: recipe for target 'lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so' failed
[scipoptsuite-4.0.0] make[3]: *** [lib/shared/libscip-4.0.0.linux.x86_64.gnu.dbg.so] Error 1
[scipoptsuite-4.0.0] make[3]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
[scipoptsuite-4.0.0] Makefile:1107: recipe for target 'libscip' failed
[scipoptsuite-4.0.0] make[2]: *** [libscip] Error 2
[scipoptsuite-4.0.0] make[2]: Leaving directory '/home/mo/sage/local/var/tmp/sage/build/scipoptsuite-4.0.0/src/scip-4.0.0'
[scipoptsuite-4.0.0] Error building/installing SCIP.
[scipoptsuite-4.0.0] 
[scipoptsuite-4.0.0] real   0m17.973s
[scipoptsuite-4.0.0] user   0m7.136s
[scipoptsuite-4.0.0] sys    0m2.576s
[scipoptsuite-4.0.0] ************************************************************************
[scipoptsuite-4.0.0] Error installing package scipoptsuite-4.0.0
[scipoptsuite-4.0.0] ************************************************************************
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 6cc2bd7 to 3be8be5

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

3be8be5Use OPT=opt on Linux. Check results of test suite
mkoeppe commented 7 years ago
comment:11

This version now works on my Linux VM and passes the test suite (sage -f -c scipoptsuite). On Mac OS X, a few tests end with segfaults.

mkoeppe commented 7 years ago
comment:12

The segfaults on Mac OS X go away if one builds with clang instead of the Sage gcc 5.4 (even with OPT=opt). Need to add -DTHREADLOCAL= to CFLAGS/CXXFLAGS though.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

019ca15scip: Working configuration for clang on Mac
8ba0287scipoptsuite: Use clang on Mac OS
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 3be8be5 to 8ba0287

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

ccf5e37Update patches and script for 4.0.0
75fb34cUse OPT=opt on Linux. Check results of test suite
74f1d79scip: Working configuration for clang on Mac
0f37658scipoptsuite: Use clang on Mac OS
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 8ba0287 to 0f37658

mkoeppe commented 7 years ago

Description changed:

--- 
+++ 
@@ -1,4 +1,6 @@
-http://scip.zib.de/#download
+This ticket upgrades scipoptsuite to version 4.0.0.

-http://scip.zib.de/download.php?fname=scipoptsuite-4.0.0.tgz  (Cannot redistribute)
+On Mac OS X, the install script works around a compiler problem with GCC 5.4.0 leading to segfaults in the testsuite of SCIP. The backtrace shows that this happens during a call to Soplex, which ultimately leads to  `stack_not_16_byte_aligned_error`. The exact reason is unknown, but it is unrelated to GMP, and it only occurs with `SHARED=true` builds. In the previous version, this problem also existed but could be worked around by building the `OPT=dbg` version instead of the `OPT=opt` version. This workaround is no longer sufficient. Instead, the script uses the Apple LLVM compiler; we now use `OPT=opt`.

+Upstream archive: http://scip.zib.de/download.php?fname=scipoptsuite-4.0.0.tgz  (DO NOT put on sage servers -- we cannot redistribute this archive)
+
mo271 commented 7 years ago
comment:16

I still get an error very similar the one in comment:9:

[scipoptsuite-4.0.0] g++: error: lib/shared/libtpinone-4.0.0.linux.x86_64.gnu.opt.so: No such file or directory

btw: I reported the scipoptlib-error and immediately got a reply with a fix:

in scipoptsuite-4.0.0/Makefile.doit replace

SCIPOPTOBJFILES        +=      $(addprefix $(ZIMPLDIR)/obj/O.$(OSTYPE).$(ARCH).$(COMP).shared.$(ZIMPLOPT)/,$(ZIMPLOBJECTS))

by

SCIPOPTOBJFILES        +=      $(addprefix $(ZIMPLDIR)/objO.$(OSTYPE).$(ARCH).$(COMP).$(LIBTYPE).$(ZIMPLOPT)/,$(ZIMPLOBJECTS)) 

They said they will fix it soon in the file for download.

mkoeppe commented 7 years ago
comment:17

Replying to @mo271:

I still get an error very similar the one in comment:9:

[scipoptsuite-4.0.0] g++: error: lib/shared/libtpinone-4.0.0.linux.x86_64.gnu.opt.so: No such file or directory

Could you send/attach a full log? So I can see what hapens with libtpi*

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

e7fb756Update patch to get libtpinone makefile dependency right
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 0f37658 to e7fb756

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from e7fb756 to a8b5ccf

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

a8b5ccfUpdate patch to get libtpinone makefile dependency right
mkoeppe commented 7 years ago
comment:20

Or try with this fix (I think I've found the problem).

mo271 commented 7 years ago
comment:21

It works now! All tests passed!

(I set it on positive review, although I have not tested on a mac)

Maybe it would be a good idea to explain in the description of the ticket, where to put the file scipoptsuite-4.0.0.tgz. (In the upstream - directory) and how to install it.

A more autmatic way to download would be to

wget -O scipoptsuite-4.0.0.tgz --post-data="license=academic" scip.zib.de/download.php?fname=scipoptsuite-4.0.0.tgz

(Notice that you agree to the academic license when you download this way; I am not sure that this is how it was intended to use their website)

mkoeppe commented 7 years ago
comment:22

Thanks for the positive review.

The SPKG.txt explains where to get the upstream archive. We had a discussion in the past, and decided that it should not be automated. Users should manually download the archive so that they are fully aware of the license.

mkoeppe commented 7 years ago

Reviewer: Moritz Firsching

vbraun commented 7 years ago

Changed branch from u/mkoeppe/upgrade_scipopt_to_4_0 to a8b5ccf