macaulay2 / mathicgb Goto Github PK
View Code? Open in Web Editor NEWThis project forked from broune/mathicgb
Compute (signature) Groebner bases using the fast datastructures from mathic.
This project forked from broune/mathicgb
Compute (signature) Groebner bases using the fast datastructures from mathic.
This is a continuation of [1]. I attempted to build the latest version of the Macaulay2 fork of mathicgb on a powerpc machine. However, unittest hangs when it gets to GB.small.
I tried debugging it several times with gdb. I'd let it hang for a few seconds, hit Ctrl+C, and then ask for a backtrace. Each time it appeared to be somewhere else in the code. I'm guessing maybe it got stuck in an infinite loop somewhere? I've pasted one log file at [2].
Note that I tried compiling both with and without tbb, but there was no change either way.
Any ideas?
Thanks!
make check-TESTS
make[2]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Entering directory '/<<PKGBUILDDIR>>'
./build/autotools/test-driver: line 107: 3807874 Bus error "$@" > $log_file 2>&1
FAIL: unittest
====================================
mathicgb 1.0: ./test-suite.log
====================================
# TOTAL: 1
# PASS: 0
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: unittest
==============
[==========] Running 237 tests from 27 test suites.
[----------] Global test environment set-up.
[----------] 9 tests from Range
[ RUN ] Range.Simple
[ OK ] Range.Simple (0 ms)
[ RUN ] Range.rangeToVector
[ OK ] Range.rangeToVector (0 ms)
[ RUN ] Range.zip
[ OK ] Range.zip (0 ms)
[ RUN ] Range.intRange
[ OK ] Range.intRange (1 ms)
[ RUN ] Range.indexRange
[ OK ] Range.indexRange (0 ms)
[ RUN ] Range.oppositePairRange
[ OK ] Range.oppositePairRange (0 ms)
[ RUN ] Range.adjPairRange
[ OK ] Range.adjPairRange (0 ms)
[ RUN ] Range.flatten
[ OK ] Range.flatten (0 ms)
[ RUN ] Range.flattenRecursive
[ OK ] Range.flattenRecursive (1 ms)
[----------] 9 tests from Range (2 ms total)
[----------] 1 test from IO
[ RUN ] IO.ideal
[ OK ] IO.ideal (0 ms)
[----------] 1 test from IO (0 ms total)
[----------] 11 tests from GB
[ RUN ] GB.small
FAIL unittest (exit status: 138)
From the Debian build log:
[----------] 8 tests from MathicIO
[ RUN ] MathicIO.Combined
[ OK ] MathicIO.Combined (0 ms)
[ RUN ] MathicIO.ReadWriteRing
[ OK ] MathicIO.ReadWriteRing (0 ms)
[ RUN ] MathicIO.ReadWriteMonomial
unknown file: Failure
C++ exception with description "ERROR: Syntax error on line 1: Expected '<', but got no more input." thrown in the test body.
[ FAILED ] MathicIO.ReadWriteMonomial (1 ms)
[ RUN ] MathicIO.ReadWriteBasis
[ OK ] MathicIO.ReadWriteBasis (0 ms)
[ RUN ] MathicIO.ReadWritePoly
[ OK ] MathicIO.ReadWritePoly (0 ms)
[ RUN ] MathicIO.ReadWriteTerm
[ OK ] MathicIO.ReadWriteTerm (0 ms)
[ RUN ] MathicIO.ReadWriteBaseField
[ OK ] MathicIO.ReadWriteBaseField (0 ms)
[ RUN ] MathicIO.ReadWriteOrder
[ OK ] MathicIO.ReadWriteOrder (1 ms)
[----------] 8 tests from MathicIO (2 ms total)
See Macaulay2/M2#1385 (comment):
R = ZZ/10000019[x,y,z];
groebnerBasis(ideal gens R, Strategy => "MGB")
-- stdio:2:1:(3): error: ERROR: Modulus 10000019 is too large. MathicGB only supports 16 bit moduli.
Either raise 16bit to something more reasonable like 32 or 64, or make sure we're using SIMD vectorization; i.e., doing 4 16bit additions in one operation. Modern CPUs support much larger vectorization lengths, for instance:
In file included from /tmp/mathicgb-20210107-2673924-1k0ikcv/src/mathicgb/mtbb.hpp:7:0,
from /tmp/mathicgb-20210107-2673924-1k0ikcv/src/mathicgb/LogDomain.hpp:6,
from /tmp/mathicgb-20210107-2673924-1k0ikcv/src/mathicgb/SignatureGB.cpp:10:
/home/linuxbrew/.linuxbrew/include/tbb/tbb.h:21:154: note: #pragma message: TBB Warning: tbb.h contains deprecated functionality. For details, please see Deprecated Features appendix in the TBB reference manual.
#pragma message("TBB Warning: tbb.h contains deprecated functionality. For details, please see Deprecated Features appendix in the TBB reference manual.")
From Debian bug #853541:
The package fails to build in a test rebuild on at least amd64 with
gcc-7/g++-7, but succeeds to build with gcc-6/g++-6. The
severity of this report may be raised before the buster release.
There is no need to fix this issue in time for the stretch release.The full build log can be found at:
http://people.debian.org/~doko/logs/gcc7-20170126/mathicgb_1.0~git20170104-1_unstable_gcc7.log
The last lines of the build log are at the end of this report.To build with GCC 7, either set CC=gcc-7 CXX=g++-7 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-7/porting_to.html
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating build/autotools/mathicgb.pc
config.status: executing depfiles commands
config.status: executing libtool commands
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build
make -j1
make[1]: Entering directory '/<<PKGBUILDDIR>>'
/bin/bash ./libtool --tag=CXX --mode=compile g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"mathicgb\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -I/usr/src/gtest/include -I/usr/src/gtest -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -c -o src/mathicgb/ReducerPack.lo src/mathicgb/ReducerPack.cpp
libtool: compile: g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" "-DPACKAGE_STRING=\"mathicgb 1.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -I/usr/src/gtest/include -I/usr/src/gtest -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 "-fdebug-prefix-map=/<<PKGBUILDDIR>>=." -fstack-protector-strong -Wformat -Werror=format-security -c src/mathicgb/ReducerPack.cpp -fPIC -DPIC -o src/mathicgb/.libs/ReducerPack.o
libtool: compile: g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" "-DPACKAGE_STRING=\"mathicgb 1.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -I/usr/src/gtest/include -I/usr/src/gtest -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 "-fdebug-prefix-map=/<<PKGBUILDDIR>>=." -fstack-protector-strong -Wformat -Werror=format-security -c src/mathicgb/ReducerPack.cpp -o src/mathicgb/ReducerPack.o >/dev/null 2>&1
/bin/bash ./libtool --tag=CXX --mode=compile g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"mathicgb\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -I/usr/src/gtest/include -I/usr/src/gtest -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -c -o src/mathicgb/ClassicGBAlg.lo src/mathicgb/ClassicGBAlg.cpp
libtool: compile: g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" "-DPACKAGE_STRING=\"mathicgb 1.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -I/usr/src/gtest/include -I/usr/src/gtest -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 "-fdebug-prefix-map=/<<PKGBUILDDIR>>=." -fstack-protector-strong -Wformat -Werror=format-security -c src/mathicgb/ClassicGBAlg.cpp -fPIC -DPIC -o src/mathicgb/.libs/ClassicGBAlg.o
In file included from /usr/include/tbb/tbb.h:65:0,
from src/mathicgb/mtbb.hpp:7,
from src/mathicgb/LogDomain.hpp:6,
from src/mathicgb/ClassicGBAlg.cpp:10:
/usr/include/tbb/pipeline.h:328:74: error: 'has_trivial_copy_constructor' is not a member of 'std'
template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; };
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/tbb/pipeline.h:328:74: note: suggested alternative: 'is_trivially_copy_constructible'
template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; };
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
is_trivially_copy_constructible
/usr/include/tbb/pipeline.h:328:104: error: expected primary-expression before '>' token
template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; };
^
/usr/include/tbb/pipeline.h:328:107: error: '::value' has not been declared
template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; };
^~~~~
Makefile:1107: recipe for target 'src/mathicgb/ClassicGBAlg.lo' failed
make[1]: *** [src/mathicgb/ClassicGBAlg.lo] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: make -j1 returned exit code 2
debian/rules:8: recipe for target 'binary' failed
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
Would it be possible to occasionally increment the mathicgb version number and push a tag to github?
This would make it easier to create packages downstream, e.g, in Debian. (See [1].)
Thanks!
[1] https://wiki.debian.org/UpstreamGuide#Source_only_tarball
From Debian bug #910237:
With a recent upload of googletest the autopkgtest of mathicgb fails in
testing when that autopkgtest is run with the binary packages of
googletest from unstable. It passes when run with only packages from
testing. In tabular form:
pass fail
googletest from testing 1.8.1-1
mathicgb from testing 1.0~git20170606-2
all others from testing from testingI copied some of the output at the bottom of this report.
Currently this regression is contributing to the delay of the migration
of googletest to testing [1]. Due to the nature of this issue, I filed
this bug report against both packages. Can you please investigate the
situation and reassign the bug to the right package? If needed, please
change the bug's severity.More information about this bug and the reason for filing it can be found on
https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformationPaul
[1] https://qa.debian.org/excuses.php?package=googletest
https://ci.debian.net/data/autopkgtest/testing/amd64/m/mathicgb/1087190/log.gz
/usr/include/gtest/gtest.h:1472:23: required from ‘static
testing::AssertionResult
testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*,
const char*, const T1&, const T2&) [with T1 = mgb::MonoMonoid<short int,
false, true, true>::MonoVector; T2 = mgb::MonoMonoid<short int, false,
true, true>::MonoVector; bool lhs_is_null_literal = false]’
src/test/MonoMonoid.cpp:418:3: required from ‘void
Monoids_setExponentAndComponent_Test<gtest_TypeParam_>::TestBody() [with
gtest_TypeParam_ = mgb::MonoMonoid<short int, false, true, true>]’
src/test/MonoMonoid.cpp:350:1: required from here
/usr/include/gtest/gtest-printers.h:156:30: error: invalid cast from
type ‘mgb::MonoMonoid<short int, false, true, true>::ConstMonoPtr’ to
type ‘const void*’
make: *** [: MonoMonoid.o] Error 1
The unittest fails under Arch Linux:
g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"mathicgb\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I/home/dan/src/M2/M2/submodules/mathicgb -I/home/dan/src/M2/M2/submodules/mathicgb/ -I/home/dan/src/M2/M2/submodules/mathicgb/src/ -DMATHICGB_NO_TBB -I/usr/src/gtest/include -I/usr/src/gtest -I/home/dan/src/M2/M2/include -I/home/dan/src/M2/M2/BUILD/dan/builds.tmp/arch64-release-1.13/include -I/home/dan/src/M2/M2/BUILD/dan/builds.tmp/arch64-release-1.13/usr-host/include -I/home/dan/src/M2/M2/BUILD/dan/builds.tmp/arch64-release-1.13/usr-host/include/cdd -I/home/dan/src/M2/M2/submodules/memtailor/src -I/home/dan/src/M2/M2/submodules/mathic/src -I/home/dan/src/M2/M2/submodules/mathicgb/src -I/home/dan/src/M2/M2/submodules/fflas_ffpack/src -isystem /usr/include/libxml2 -I/usr/src/gtest -DNDEBUG -std=gnu++11 -g3 -O2 -MT src/test/MathicIO.o -MD -MP -MF $depbase.Tpo -c -o src/test/MathicIO.o /home/dan/src/M2/M2/submodules/mathicgb/src/test/MathicIO.cpp &&\
mv -f $depbase.Tpo $depbase.Po
In file included from /usr/include/gtest/internal/gtest-param-util.h:48,
from /usr/include/gtest/gtest-param-test.h:188,
from /usr/include/gtest/gtest.h:63,
from /home/dan/src/M2/M2/submodules/mathicgb/src/test/MonoMonoid.cpp:8:
/usr/include/gtest/gtest-printers.h: In instantiation of ‘static void testing::internal2::TypeWithoutFormatter<T, kTypeKind>::PrintValue(const T&, std::ostream*) [with T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef; testing::internal2::TypeKind kTypeKind = (testing::internal2::TypeKind)2; std::ostream = std::basic_ostream<char>]’:
/usr/include/gtest/gtest-printers.h:246:66: required from ‘std::basic_ostream<_CharT, _Traits>& testing::internal2::operator<<(std::basic_ostream<_CharT, _Traits>&, const T&) [with Char = char; CharTraits = std::char_traits<char>; T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef]’
/usr/include/gtest/gtest-printers.h:287:7: required from ‘void testing_internal::DefaultPrintNonContainerTo(const T&, std::ostream*) [with T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef; std::ostream = std::basic_ostream<char>]’
/usr/include/gtest/gtest-printers.h:478:49: required from ‘void testing::internal::DefaultPrintTo(testing::internal::WrapPrinterType<(testing::internal::DefaultPrinterType)3>, const T&, std::ostream*) [with T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef; std::ostream = std::basic_ostream<char>]’
/usr/include/gtest/gtest-printers.h:513:17: required from ‘void testing::internal::PrintTo(const T&, std::ostream*) [with T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef; std::ostream = std::basic_ostream<char>]’
/usr/include/gtest/gtest-printers.h:768:12: required from ‘static void testing::internal::UniversalPrinter<T>::Print(const T&, std::ostream*) [with T = mgb::MonoMonoid<short int, true, true, true>::ConstMonoRef; std::ostream = std::basic_ostream<char>]’
/usr/include/gtest/gtest-printers.h:959:30: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/gtest/gtest-printers.h:389:45: required from ‘std::__cxx11::string testing::internal::FormatForComparisonFailureMessage(const T1&, const T2&) [with T1 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; T2 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; std::__cxx11::string = std::__cxx11::basic_string<char>]’
/usr/include/gtest/gtest.h:1433:53: required from ‘testing::AssertionResult testing::internal::CmpHelperEQFailure(const char*, const char*, const T1&, const T2&) [with T1 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; T2 = mgb::MonoMonoid<short int, true, true, true>::MonoVector]’
/usr/include/gtest/gtest.h:1448:28: required from ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; T2 = mgb::MonoMonoid<short int, true, true, true>::MonoVector]’
/usr/include/gtest/gtest.h:1472:23: required from ‘static testing::AssertionResult testing::internal::EqHelper<lhs_is_null_literal>::Compare(const char*, const char*, const T1&, const T2&) [with T1 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; T2 = mgb::MonoMonoid<short int, true, true, true>::MonoVector; bool lhs_is_null_literal = false]’
/home/dan/src/M2/M2/submodules/mathicgb/src/test/MonoMonoid.cpp:418:3: required from ‘void Monoids_setExponentAndComponent_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = mgb::MonoMonoid<short int, true, true, true>]’
/home/dan/src/M2/M2/submodules/mathicgb/src/test/MonoMonoid.cpp:350:1: required from here
/usr/include/gtest/gtest-printers.h:156:30: error: invalid cast from type ‘mgb::MonoMonoid<short int, true, true, true>::ConstMonoPtr’ to type ‘const void*’
reinterpret_cast<const void*>(&value)),
From Debian bug #984231:
In file included from src/mathicgb/SparseMatrix.hpp:6,
from src/mathicgb/SparseMatrix.cpp:4:
src/mathicgb/RawVector.hpp: In member function ‘mgb::RawVector<T>::size_type mgb::RawVector<T>::max_size() const’:
src/mathicgb/RawVector.hpp:109:43: error: ‘numeric_limits’ is not a member of ‘std’
109 | size_type max_size() const {return std::numeric_limits<size_type>::max();}
| ^~~~~~~~~~~~~~
src/mathicgb/RawVector.hpp:109:67: error: expected primary-expression before ‘>’ token
109 | size_type max_size() const {return std::numeric_limits<size_type>::max();}
| ^
src/mathicgb/RawVector.hpp:109:70: error: ‘::max’ has not been declared; did you mean ‘std::max’?
109 | size_type max_size() const {return std::numeric_limits<size_type>::max();}
| ^~~
| std::max
In file included from /usr/include/c++/11/algorithm:62,
from src/mathicgb/RawVector.hpp:10,
from src/mathicgb/SparseMatrix.hpp:6,
from src/mathicgb/SparseMatrix.cpp:4:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
3467 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
I'm getting the following on Ubuntu 18.04 with gcc 7:
libtool: compile: g++ -DPACKAGE_NAME=\"mathicgb\" -DPACKAGE_TARNAME=\"mathicgb\" -DPACKAGE_VERSION=\"1.0\" "-DPACKAGE_STRING=\"mathicgb 1.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_CXX11=1 -DPACKAGE=\"mathicgb\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -I./ -I./src/ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 "-fdebug-prefix-map=/build/mathicgb-1.0~git20220311=." -fstack-protector-strong -Wformat -Werror=format-security -c src/mathicgb.cpp -fPIC -DPIC -o src/.libs/mathicgb.o
src/mathicgb.cpp: In function 'bool mgb::mgbi::internalComputeGroebnerBasis(mgb::GroebnerInputIdealStream&, mgb::mgbi::IdealAdapter&)':
src/mathicgb.cpp:971:10: error: 'void gb' has incomplete type
auto gb = scheduler.execute([&basis,&conf,¶ms]{
^~
Makefile:1121: recipe for target 'src/mathicgb.lo' failed
make: *** [src/mathicgb.lo] Error 1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.