Opened 10 months ago

Closed 6 months ago

Last modified 6 months ago

#67813 closed defect (fixed)

polymake-4.10_1 arm64 build fails

Reported by: murrayE Owned by: catap (Kirill A. Korinsky)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: build fail Cc: catap (Kirill A. Korinsky)
Port: polymake

Description

I don't see exactly what the error is, but the build fails. Log attached.

Attachments (1)

main.log (3.4 MB) - added by murrayE 10 months ago.
main.log

Change History (9)

Changed 10 months ago by murrayE

Attachment: main.log added

main.log

comment:1 Changed 10 months ago by catap (Kirill A. Korinsky)

Something quite wrong here:

:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:66:10: error: use of undeclared identifier 'dihedral_group_action'
:info:build          dihedral_group_action(n, diagonals, index_of, ind_Aut, induced_action, igens);
:info:build          ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:68:10: error: use of undeclared identifier 'symmetric_group_action'
:info:build          symmetric_group_action(m, n, index_of, ind_Aut, induced_action, igens);
:info:build          ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:115:90: error: use of undeclared identifier 'IncludeCrossings'
:info:build       fill_upper_layer(k_plus_1_crossings, lower_layer, k, m, diagonals, igens, link_of, IncludeCrossings::yes);
:info:build                                                                                          ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:122:10: error: use of undeclared identifier 'initialize_f_vector'
:info:build          initialize_f_vector(fvec_it, m, k);
:info:build          ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:127:86: error: use of undeclared identifier 'IncludeCrossings'
:info:build          fill_upper_layer(upper_layer, lower_layer, k, m, diagonals, igens, link_of, IncludeCrossings::no);
:info:build                                                                                      ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:140:7: error: use of undeclared identifier 'squeeze_matrix'
:info:build       squeeze_matrix(facets, labels, lower_layer, link_of);
:info:build       ^
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_polymake/polymake/work/polymake-4.10/apps/topaz/src/multi_associahedron_sphere.cc:18:

comment:2 Changed 10 months ago by catap (Kirill A. Korinsky)

Well... it successfully built on:

catap@Kirills-mini-m1 ~ % xcodebuild -version 
Xcode 14.1
Build version 14B47b
catap@Kirills-mini-m1 ~ % clang --version     
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: arm64-apple-darwin22.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
catap@Kirills-mini-m1 ~ %

=> I realy have no idea that to do.

comment:3 Changed 10 months ago by ryandesign (Ryan Carsten Schmidt)

We also had successful builds on the buildbot but the buildbot does builds in a clean environment.

I see evidence in your log that your build of polymake is trying to include headers installed by the previous version of polymake; this is bound to cause problems.

First, clean out this faulty build with sudo port clean polymake. Then you can use this workaround:

  • Deactivate the old version of polymake first (sudo port -f deactivate polymake)

If you were running on macOS 12 or earlier, you could also choose this workaround:

  • Build polymake with trace mode (sudo port -t install polymake)

This workaround is not available in macOS 13 or later because trace mode is currently broken in macOS 13 or later.

This problem should be reported to the developers so they can fix it. Until the software can be fixed, the port should indicate this conflict with these lines:

PortGroup conflicts_build 1.0

conflicts_build ${name}

This will cause the port to exit with an error if you attempt to build it while the previous version is active and will advise you to deactivate the old version first.

Last edited 8 months ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:4 in reply to:  3 Changed 10 months ago by ryandesign (Ryan Carsten Schmidt)

Replying to ryandesign:

I see evidence in your log that your build of polymake is trying to include headers installed by the previous version of polymake;

This typically happens when -I flags are in the wrong order. Can't confirm that because the build uses silent rules. Please modify the Portfile to disable silent rules so we can see the complete compile commands.

comment:5 Changed 8 months ago by murrayE

Where would i find the build file to modify? (I've never dealt direclty with buildfiles before!)

comment:6 Changed 6 months ago by catap (Kirill A. Korinsky)

Owner: set to catap
Resolution: fixed
Status: newclosed

In f08e6d9b99c463159adbb32d4ff299b780a2486f/macports-ports (master):

polymake: update to 4.11

Closes: #67813
Closes: #67350

comment:7 Changed 6 months ago by murrayE

polymake @4.11 still fails to install with Xcode 15.1 Beta, under macOS Sonoma (14.1.1) on arm64, because the prerequisite mumps (@5.6.2) fails to build there.

comment:8 Changed 6 months ago by catap (Kirill A. Korinsky)

Yeah, which is blocked by OpenBLAS and probabily OpenMPI/Mpich.

Note: See TracTickets for help on using tickets.