bertiniteam / b2

Bertini 2.0: The redevelopment of Bertini in C++.
88 stars 34 forks source link

duplicate symbol 'boost::phoenix::placeholders::uarg1' #174

Open ofloveandhate opened 1 year ago

ofloveandhate commented 1 year ago

Compiling with Boost 1.81 yields duplicate symbols at link time:

duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    src/.libs/_pybertini_la-parser_export.o
    src/.libs/_pybertini_la-bertini_python.o
ld: 10 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

This is a bug in this version of Boost, which I expect to be fixed in 1.82 or 1.83. For now, when configuring for building the Python bindings, I invoked as

./configure --with-eigen=/opt/homebrew/Cellar/eigen/3.4.0_1/ CPPFLAGS=-DBOOST_PHOENIX_STL_TUPLE_H_