[MacPorts] #72438: octave-geometry fails to build: martinez.h: error: expected template-name before '<' token
MacPorts
noreply at macports.org
Sun May 4 23:29:20 UTC 2025
#72438: octave-geometry fails to build: martinez.h: error: expected template-name
before '<' token
------------------------------+--------------------
Reporter: barracuda156 | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.10.6
Resolution: | Keywords:
Port: octave-geometry |
------------------------------+--------------------
Comment (by barracuda156):
Replying to [comment:2 Schamschula]:
> No, without the patch it didn't build at all on my machine:
> {{{
> macOS 14.7.3 23H417 arm64
> Xcode 16.2 16C5032a
> }}}
>
> I get the following errors
>
> {{{
> /usr/bin/arch -arch arm64 /opt/local/bin/mkoctfile-10.1.0 --verbose -c
connector.cpp -o connector.o
> ccache /usr/bin/clang++ -c -I/opt/local/include
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -fPIC
-I/opt/local/include/octave-10.1.0/octave/..
-I/opt/local/include/octave-10.1.0/octave -I/opt/local/include -pthread
-pipe -Os -std=gnu++17 -stdlib=libc++
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64
connector.cpp -o connector.o
> In file included from connector.cpp:9:
> In file included from ./connector.h:13:
> ./martinez.h:40:30: error: no template named 'binary_function'; did you
mean '__binary_function'?
> 40 | struct SegmentComp : public binary_function<SweepEvent*,
SweepEvent*, bool> { // for sorting edges in the sweep line
> | ^~~~~~~~~~~~~~~
> | __binary_function
>
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1:
note: '__binary_function' declared here
> 49 | using __binary_function =
__binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
> | ^
> In file included from connector.cpp:9:
> In file included from ./connector.h:13:
> ./martinez.h:67:33: error: no template named 'binary_function'; did you
mean '__binary_function'?
> 67 | struct SweepEventComp : public
binary_function<SweepEvent*, SweepEvent*, bool> { // for sortening events
> | ^~~~~~~~~~~~~~~
> | __binary_function
>
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1:
note: '__binary_function' declared here
> 49 | using __binary_function =
__binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
> | ^
> 2 errors generated.
> make: *** [connector.o] Error 1
>
> pkg: error running 'make' for the geometry package
> Command failed: cd "/opt/local/var/macports/build
/_Users_marius_Development_MacPorts_ports_octave_octave-geometry/octave-
geometry/work/geometry" && /usr/bin/arch -arch $OCTAVE_ARCH /opt/local/bin
/octave-cli -q -f -H --eval 'try; pkg build -verbose -nodeps
/opt/local/var/macports/build
/_Users_marius_Development_MacPorts_ports_octave_octave-geometry/octave-
geometry/work/tmp-build /opt/local/var/macports/build
/_Users_marius_Development_MacPorts_ports_octave_octave-geometry/octave-
geometry/work/geometry-4.1.0.tar.gz; catch; disp(lasterror.message);
exit(1); end_try_catch;'
> Exit code: 1
> }}}
>
> This is the very issue that I referenced in my commit:
https://octave.discourse.group/t/geometry-package-installation/5915/8
I have replied there already. The patch is either incomplete or incorrect,
the code should compile with gcc and clang both, and it does not now.
--
Ticket URL: <https://trac.macports.org/ticket/72438#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list