Menu

#36 Mac OS X build problems

Bug
open
nobody
None
5
2015-11-04
2015-11-04
No

Trying to build against Anaconda python distro on Mac OS 10.11
Using boost / scons as installed via

conda install boost
conda install scons

Building via the traditional

python setup.py install

gets me through a bunch of the compilation, (but, several warnings that are boost-in-origin) but then building wrappers/py_slots4.cpp

gcc -fno-strict-aliasing -I/Users/flip/anaconda/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DBOOST_PYTHON_MAX_ARITY=18 -Isupportlib/include -I/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/ -I/Users/flip/anaconda/include/python2.7 -c wrappers/py_slots4.cpp -o build/temp.macosx-10.5-x86_64-2.7/wrappers/py_slots4.o

In file included from wrappers/py_slots4.cpp:6:
In file included from wrappers/py_slot.h:11:
supportlib/include/slot.h:549:5: error: use of overloaded operator '<<' is ambiguous (with operand types 'std::ostream'
      (aka 'basic_ostream<char>') and 'const boost::python::api::object')
  os<<slot.value<<" ("<<typeid(T).name()<<") flags:"<<slot.flags;
  ~~^ ~~~~~~~~~~
wrappers/py_slot.h:229:7: note: in instantiation of function template specialization
      'support3d::operator<<<boost::python::api::object>' requested here
    os<<*self;
      ^
wrappers/py_slots4.cpp:36:3: note: in instantiation of member function 'SlotWrapper<boost::python::api::object>::__str__'
      requested here
  SLOT("PySlot",object);
  ^
wrappers/py_slot.h:37:42: note: expanded from macro 'SLOT'
    .def("__str__", &SlotWrapper<stype>::__str__)
                                         ^
/usr/include/c++/4.2.1/ostream:185:7: note: candidate function
      operator<<(bool __n)
      ^
/Users/flip/anaconda/include/boost/python/object_operators.hpp:105:1: note: candidate function [with L =
      std::basic_ostream<char>, R = boost::python::api::object]
BOOST_PYTHON_BINARY_OPERATOR(<<)
^
/Users/flip/anaconda/include/boost/python/object_operators.hpp:90:36: note: expanded from macro
      'BOOST_PYTHON_BINARY_OPERATOR'
BOOST_PYTHON_BINARY_RETURN(object) operator op(L const& l, R const& r)  \
                                   ^
1 error generated.
error: command 'gcc' failed with exit status 1

so I'm sort of wondering if there is a boost or scons version issue here.

Discussion


Log in to post a comment.