Open DanGrayson opened 4 years ago
I just got this on the mac with the libtool from get-tools
:
libtool: link: g++-10 -dynamiclib -o .libs/lib4ti2int32.0.dylib .libs/lib4ti2int32_la-4ti2API.o .libs/lib4ti2int32_la-Algorithm.o .libs/lib4ti2int32_la-BasicCompletion.o .libs/lib4ti2int32_la-BasicGeneration.o .libs/lib4ti2int32_la-BasicOptions.o .libs/lib4ti2int32_la-BasicReduction.o .libs/lib4ti2int32_la-BinomialArray.o .libs/lib4ti2int32_la-BinomialArrayStream.o .libs/lib4ti2int32_la-BinomialCollection.o .libs/lib4ti2int32_la-Binomial.o .libs/lib4ti2int32_la-BinomialFactory.o .libs/lib4ti2int32_la-BinomialSet.o .libs/lib4ti2int32_la-BinomialSetStream.o .libs/lib4ti2int32_la-BinomialStream.o .libs/lib4ti2int32_la-BitSetStream.o .libs/lib4ti2int32_la-Bounded.o .libs/lib4ti2int32_la-CircuitsAPI.o .libs/lib4ti2int32_la-CircuitOptions.o .libs/lib4ti2int32_la-Completion.o .libs/lib4ti2int32_la-DiagonalAlgorithm.o .libs/lib4ti2int32_la-EliminateAlgorithm.o .libs/lib4ti2int32_la-Euclidean.o .libs/lib4ti2int32_la-Extract.o .libs/lib4ti2int32_la-Feasible.o .libs/lib4ti2int32_la-FeasibleStream.o .libs/lib4ti2int32_la-FilterReduction.o .libs/lib4ti2int32_la-FlipCompletion.o .libs/lib4ti2int32_la-GeneratingSet.o .libs/lib4ti2int32_la-Globals.o .libs/lib4ti2int32_la-GroebnerBasis.o .libs/lib4ti2int32_la-HermiteAlgorithm.o .libs/lib4ti2int32_la-HybridGenSet.o .libs/lib4ti2int32_la-LatticeBasis.o .libs/lib4ti2int32_la-LongDenseIndexSet.o .libs/lib4ti2int32_la-LongDenseIndexSetStream.o .libs/lib4ti2int32_la-Markov.o .libs/lib4ti2int32_la-MaxMinGenSet.o .libs/lib4ti2int32_la-Minimize.o .libs/lib4ti2int32_la-MinimizeOptions.o .libs/lib4ti2int32_la-OnesReduction.o .libs/lib4ti2int32_la-Optimise.o .libs/lib4ti2int32_la-Options.o .libs/lib4ti2int32_la-OrderedCompletion.o .libs/lib4ti2int32_la-ProjectLiftGenSet.o .libs/lib4ti2int32_la-QSolveAlgorithm.o .libs/lib4ti2int32_la-QSolveAPI.o .libs/lib4ti2int32_la-RayAlgorithm.o .libs/lib4ti2int32_la-RaysAPI.o .libs/lib4ti2int32_la-SaturationGenSet.o .libs/lib4ti2int32_la-ShortDenseIndexSet.o .libs/lib4ti2int32_la-ShortDenseIndexSetStream.o .libs/lib4ti2int32_la-Statistics.o .libs/lib4ti2int32_la-SyzygyCompletion.o .libs/lib4ti2int32_la-SyzygyGeneration.o .libs/lib4ti2int32_la-Timer.o .libs/lib4ti2int32_la-Truncated.o .libs/lib4ti2int32_la-VectorArray.o .libs/lib4ti2int32_la-VectorArrayAPI.o .libs/lib4ti2int32_la-VectorArrayStream.o .libs/lib4ti2int32_la-Vector.o .libs/lib4ti2int32_la-VectorStream.o .libs/lib4ti2int32_la-WalkAlgorithm.o .libs/lib4ti2int32_la-WalkOptions.o .libs/lib4ti2int32_la-WeightAlgorithm.o .libs/lib4ti2int32_la-WeightedBinomialSet.o .libs/lib4ti2int32_la-WeightedReduction.o -L../4ti2 /Users/tom/temp/M2/M2/BUILD/tom/libraries/4ti2/build/4ti2-1.6.9/src/4ti2/.libs/lib4ti2common.dylib -L/Users/tom/temp/M2/M2/BUILD/tom/usr-host/lib -L/Users/tom/temp/M2/M2/BUILD/tom/submodules/memtailor/.libs -L/Users/tom/temp/M2/M2/BUILD/tom/submodules/mathic/.libs -L/Users/tom/temp/M2/M2/BUILD/tom/submodules/mathicgb/.libs -L/usr/lib -L/usr/local/lib -lglpk -lgmpxx -lgmp -g3 -O2 -g3 -install_name /Users/tom/temp/M2/M2/BUILD/tom/usr-host/lib/lib4ti2int32.0.dylib -compatibility_version 1 -current_version 1.0 -Wl,-single_module ld: warning: directory not found for option '-L/Users/tom/temp/M2/M2/BUILD/tom/submodules/memtailor/.libs' ld: warning: directory not found for option '-L/Users/tom/temp/M2/M2/BUILD/tom/submodules/mathic/.libs' ld: warning: directory not found for option '-L/Users/tom/temp/M2/M2/BUILD/tom/submodules/mathicgb/.libs' Undefined symbols for architecture x86_64: "ZlsRSoPK12mpz_struct", referenced from: __ZN6_4ti2_14VectorArrayAPI19set_entry_mpz_classEiiRK10gmp_exprIA1_12mpz_structS3_E in lib4ti2int32_la-VectorArrayAPI.o ld: symbol(s) not found for architecture x86_64
Could you attach the top level config.log file as well as the 4ti2 config.log file?
This looks like an issue with gmp (or mpir) being built with a different compiler than 4ti2. Have you tried AppleClang or Clang? In particular, g++-10 (i.e. not the one that is a shim over Xcode) has been having issues on macOS and we removed it from the Github Actions builds.
I can't reproduce this anymore, sorry. It might have indeed been a mismatch between compilers as I'm experimenting with all the different options now. I will open new issues for my, well, new issues.
Under Ubuntu 20.04, with the system-provided libtool, version 2.4.6, we get this link error when running "make check" for the 4ti2 library:
But with the libtool we download and build ourselves, which is also version 2.4.6, we don't get that error. ("make get-libtool")
I hate libtool.