Opened 3 weeks ago
Closed 3 weeks ago
#71102 closed defect (fixed)
ixion-0.18 @0.18.1: error: no template named 'variant' in namespace 'std'
Reported by: | graywolf-s1 | Owned by: | Tatsh (Andrew Udvare) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.10.2 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt) | |
Port: | ixion-0.18 |
Description
Compilation of ixion-0.18 fails when trying to install it (as a dependency for libreoffice).
---> Fetching archive for ixion-0.18 ---> Attempting to fetch ixion-0.18-0.18.1_1.darwin_23.arm64.tbz2 from https://vie.at.packages.macports.org/ixion-0.18 ---> Attempting to fetch ixion-0.18-0.18.1_1.darwin_23.arm64.tbz2 from https://packages.macports.org/ixion-0.18 ---> Attempting to fetch ixion-0.18-0.18.1_1.darwin_23.arm64.tbz2 from https://fra.de.packages.macports.org/ixion-0.18 ---> Fetching distfiles for ixion-0.18 ---> Verifying checksums for ixion-0.18 ---> Extracting ixion-0.18 ---> Configuring ixion-0.18 ---> Building ixion-0.18 Error: Failed to build ixion-0.18: command execution failed Error: See /opt/local/var/macports/logs/_Users_tomas.volf_src_ports_devel_ixion-0.18/ixion-0.18/main.log for details. Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
First error from the log file:
:info:build In file included from document.cpp:8: :info:build ../../include/ixion/document.hpp:47:14: error: no template named 'variant' in namespace 'std' :info:build std::variant<std::string_view, ixion::abs_address_t> value; :info:build ~~~~~^
Attachments (1)
Change History (8)
Changed 3 weeks ago by graywolf-s1
comment:1 Changed 3 weeks ago by jmroot (Joshua Root)
Owner: | set to Tatsh |
---|---|
Status: | new → assigned |
comment:2 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)
Summary: | Cannot compile ixion-0.18 → ixion-0.18 @0.18.1: error: no template named 'variant' in namespace 'std' |
---|
std::variant
seems to require C++17. The build seems to be requesting C++11 mode, so naturally this will fail:
:info:build libtool: compile: /usr/bin/clang++ -std=gnu++11 -std=c++17 -std=gnu++11 -DHAVE_CONFIG_H -I. -I../.. -I../../include -I../../src/include -DIXION_BUILD -I/opt/local/include/mdds-2.1 -I/opt/local/libexec/boost/1.76/include -I/opt/local/libexec/boost/1.76/include -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -pipe -I/opt/local/libexec/boost/1.76/include -Os -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -fvisibility=hidden -Wall -Wshadow -Wno-write-strings -pthread -DSIZEOF_VOID_P=8 -O2 -DIXION_THREADS=1 -MT cell_access.lo -MD -MP -MF .deps/cell_access.Tpo -c cell_access.cpp -fno-common -DPIC -o .libs/cell_access.o
Essentially the same problem was reported for ixion-0.17 in #70373.
comment:3 Changed 3 weeks ago by graywolf-s1
What I do not understand is why https://github.com/macports/macports-ports/blob/master/devel/ixion-0.18/Portfile#L30 is not sufficient. Based on the log line you posted above it seems to request *both* gnu++11 and c++17. Which is bit weird.
EDIT: I have read the other ticket now. Please ignore the comment. (Not sure how to delete it.)
comment:4 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)
Downgrading to autoconf 2.71 works for me. I've filed a bug report with the developers of ixion.
comment:5 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)
Upstream offers release tarballs which were built with autoconf 2.71 or earlier, so switching the MacPorts ixion ports to use those would fix the problem, and is desirable for all the other usual reasons as well. However, achieving this is complicated by #71113.
comment:6 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign added |
---|
comment:7 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Log file from the build