polymake 4.7 fails to compile on FreeBSD i386

Discussions on installation issues go here.
Philipp
Posts: 10
Joined: 17 Jun 2021, 20:30

polymake 4.7 fails to compile on FreeBSD i386

Postby Philipp » 03 Oct 2022, 16:51

polymake 4.7 fails to compile on FreeBSD 13.1-Release i386; to be more specific: it fails to compile in a jail when testing the FreeBSD port with `poudriere testport`.

The error is the following:

Code: Select all

[798/944] c++ -c -o /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o -MMD -MT /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o -MF /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o.d -fPIC -pipe -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -stdlib=libc++ -std=c++14 -Wno-logical-op-parentheses -Wno-shift-op-parentheses -Wno-mismatched-tags -Wno-unused-local-typedef -Wno-error=unneeded-internal-declaration -Wshadow -Wconversion -Wno-sign-conversion -Wzero-as-null-pointer-constant -fopenmp -I/usr/local/include -I/usr/local/lib -I/usr/local/include -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O3 -DPOLYMAKE_APPNAME=topaz -DPOLYMAKE_DEFINITION_SOURCE_FILE="grass_plucker_impl.cc" -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/app-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/TOSimplex -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/Miniball -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/apps/topaz/src/grass_plucker_impl.cc && : 'COMPILER_USED=13.0.0' FAILED: /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o c++ -c -o /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o -MMD -MT /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o -MF /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/grass_plucker_impl.o.d -fPIC -pipe -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -stdlib=libc++ -std=c++14 -Wno-logical-op-parentheses -Wno-shift-op-parentheses -Wno-mismatched-tags -Wno-unused-local-typedef -Wno-error=unneeded-internal-declaration -Wshadow -Wconversion -Wno-sign-conversion -Wzero-as-null-pointer-constant -fopenmp -I/usr/local/include -I/usr/local/lib -I/usr/local/include -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O3 -DPOLYMAKE_APPNAME=topaz -DPOLYMAKE_DEFINITION_SOURCE_FILE="grass_plucker_impl.cc" -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/app-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/TOSimplex -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/Miniball -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/apps/topaz/src/grass_plucker_impl.cc && : 'COMPILER_USED=13.0.0' In file included from /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/apps/topaz/src/grass_plucker_impl.cc:18: /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:137:61: warning: shift count >= width of type [-Wshift-count-overflow] bool is_cube_index() const { return CubeIndex(value_) >= first_cube_index; } ^~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:126:44: note: expanded from macro 'first_cube_index' #define first_cube_index (CubeIndex(Int(1) << (2*max_n_vertices))) ^ ~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:142:33: warning: shift count >= width of type [-Wshift-count-overflow] return CubeIndex(value_ - first_cube_index); ^~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:126:44: note: expanded from macro 'first_cube_index' #define first_cube_index (CubeIndex(Int(1) << (2*max_n_vertices))) ^ ~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:282:19: warning: shift count >= width of type [-Wshift-count-overflow] if (store > first_cube_index) ^~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:126:44: note: expanded from macro 'first_cube_index' #define first_cube_index (CubeIndex(Int(1) << (2*max_n_vertices))) ^ ~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:898:15: error: constexpr variable 'low_bitmask' must be initialized by a constant expression constexpr Int low_bitmask ( (Int(1) << max_n_vertices) - 1); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:898:56: note: value -2147483649 is outside the range of representable values of type 'long' constexpr Int low_bitmask ( (Int(1) << max_n_vertices) - 1); ^ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:899:15: error: constexpr variable 'high_bitmask' must be initialized by a constant expression constexpr Int high_bitmask( low_bitmask << max_n_vertices); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:899:29: note: initializer of 'low_bitmask' is not a constant expression constexpr Int high_bitmask( low_bitmask << max_n_vertices); ^ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:898:15: note: declared here constexpr Int low_bitmask ( (Int(1) << max_n_vertices) - 1); ^ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/apps/topaz/src/grass_plucker_impl.cc:902:15: warning: shift count >= width of type [-Wshift-count-overflow] if (n < first_cube_index) { ^~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps/polymake/topaz/grass_plucker.h:126:44: note: expanded from macro 'first_cube_index' #define first_cube_index (CubeIndex(Int(1) << (2*max_n_vertices))) ^ ~~~~~~~~~~~~~~~~~~ 4 warnings and 2 errors generated. [799/944] c++ -c -o /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/gkz_computation.o -MMD -MT /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/gkz_computation.o -MF /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/build/Opt/apps/topaz/gkz_computation.o.d -fPIC -pipe -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -stdlib=libc++ -std=c++14 -Wno-logical-op-parentheses -Wno-shift-op-parentheses -Wno-mismatched-tags -Wno-unused-local-typedef -Wno-error=unneeded-internal-declaration -Wshadow -Wconversion -Wno-sign-conversion -Wzero-as-null-pointer-constant -fopenmp -I/usr/local/include -I/usr/local/lib -I/usr/local/include -DPOLYMAKE_WITH_FLINT -DPOLYMAKE_DEBUG=0 -DNDEBUG -O3 -DPOLYMAKE_APPNAME=topaz -DPOLYMAKE_DEFINITION_SOURCE_FILE="gkz_computation.cc" -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/app-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/apps -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/TOSimplex -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/external/Miniball -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core-wrappers -I/wrkdirs/usr/ports/math/polymake/work/polymake-4.7/include/core /wrkdirs/usr/ports/math/polymake/work/polymake-4.7/apps/topaz/src/gkz_computation.cc && : 'COMPILER_USED=13.0.0' ninja: build stopped: subcommand failed. gmake[1]: *** [Makefile:35: all] Error 1 gmake[1]: Leaving directory '/wrkdirs/usr/ports/math/polymake/work/polymake-4.7' ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** Error code 1 Stop. make: stopped in /usr/ports/math/polymake build of math/polymake | polymake-4.7 ended at Sat Oct 1 18:12:30 CEST 2022 build time: 00:57:17 !!! build failure encountered !!!

These are the configure arguments:

Code: Select all

--CONFIGURE_ARGS-- --prefix=/usr/local --exec-prefix=/usr/local --bindir=/usr/local/bin --includedir=/usr/local/include --libdir=/usr/local/lib --libexecdir=/usr/local/libexec/polymake --datadir=/usr/local/share/polymake --docdir=/usr/local/share/doc/polymake --without-prereq --with-libcxx --with-cdd=/usr/local --with-flint=/usr/local --with-permlib=/usr/local/lib --without-java --without-javaview --without-sympol --with-bliss=/usr/local --without-lrs --without-native --without-nauty --with-libnormaliz=/usr/local --with-ppl=/usr/local --without-scip --with-singular=/usr/local --without-soplex --End CONFIGURE_ARGS--

The complete logfile is attached (BTW: why are xz-compressed files not supported?).

[edit]
The patch to the FreeBSD ports tree is available here: https://bugs.freebsd.org/bugzilla/show_ ... ?id=266792
[/edit]
Attachments
polymake-4.7-13.1-Release-i386.log.gz
(42.64 KiB) Downloaded 204 times

blorenz
Developer
Posts: 139
Joined: 10 Jan 2011, 17:21

Re: polymake 4.7 fails to compile on FreeBSD i386

Postby blorenz » 03 Oct 2022, 20:36

Hi,

sorry about that error, due to the limited address space, both for compilation and for actual computations, 32bit platforms are not covered by our CI.
Please try the patch I posted here on github, this will be included in the next release.

Best,
Benjamin

Philipp
Posts: 10
Joined: 17 Jun 2021, 20:30

Re: polymake 4.7 fails to compile on FreeBSD i386

Postby Philipp » 03 Oct 2022, 23:41

Hi Benjamin,

thank you very much for the hint. This indeed fixes the issue. I updated my patch for the ports tree accordingly.

Best
Philipp


Return to “Installing polymake”