Boost compilation error under OS X 10.8.5
Dear Boost Users list, I have an issue trying to compile a project under Mac OS X 10.8.5 using Boost libraries, version 1.34.1. I am using Xcode 4.6.3 and accompanying Command Line Tools. This must be an OS X specific issue, since the project compiles under CentOS Linux. I am asking this on the list in hopes that someone has used Boost in OS X development and has maybe come across a similar issue. I attach an excerpt of the compiler messages below. I have tried googling for the error, but can't seem to find satisfying answers. Please let me know if you can think of something from the top of your head or, which is more likely, if you need more info (e.g., source code excerpts) to be able to help me. Thank you very much, Best, Sebastian ######## g++ -DPARC -DCPPPA_EXPORT= -fPIC -fno-common -D__STDC_LIMIT_MACROS -g -fno-inline -Wpointer-arith -Wwrite-strings -Wno-deprecated -Wreturn-type -W -I/usr/local/include -O2 -I../../src/include -I../../LexBase/src -I/include -I/usr/local/include/boost-1_34_1 -I/Users/sebastiansulger/projects/xle/dev/xfr/src/../../bgdb -Idb_client -I./ -I../include -Ifacts -Irules -Ichoices -Iterms -Imatches -Idriver -Iparser -Itriples -Iprolog -Idebug -Inew_parser -o terms/TermStorage.o -c terms/TermStorage.cpp In file included from terms/TermStorage.cpp:9: In file included from terms/TermStorage.h:28: In file included from ./Types.h:26: In file included from /usr/local/include/boost-1_34_1/boost/functional/hash.hpp:10: /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:487:20: error: call to 'hash_value' is ambiguous return hash_value(val); ^~~~~~~~~~ /usr/include/c++/4.2.1/ext/hashtable.h:595:16: note: in instantiation of member function 'boost::hash<long long>::operator()' requested here { return _M_hash(__key) % __n; } ^ /usr/include/c++/4.2.1/ext/hashtable.h:587:16: note: in instantiation of member function '__gnu_cxx::hashtable<std::pair<const long long, unsigned int>, long long, boost::hash<long long>, std::_Select1st<std::pair<const long long, unsigned int> >, std::equal_to<long long>, std::allocator<unsigned int> >::_M_bkt_num_key' requested here { return _M_bkt_num_key(__key, _M_buckets.size()); } ^ /usr/include/c++/4.2.1/ext/hashtable.h:522:18: note: in instantiation of member function '__gnu_cxx::hashtable<std::pair<const long long, unsigned int>, long long, boost::hash<long long>, std::_Select1st<std::pair<const long long, unsigned int> >, std::equal_to<long long>, std::allocator<unsigned int> >::_M_bkt_num_key' requested here size_type __n = _M_bkt_num_key(__key); ^ /usr/include/c++/4.2.1/ext/hash_map:219:22: note: in instantiation of member function '__gnu_cxx::hashtable<std::pair<const long long, unsigned int>, long long, boost::hash<long long>, std::_Select1st<std::pair<const long long, unsigned int> >, std::equal_to<long long>, std::allocator<unsigned int> >::find' requested here { return _M_ht.find(__key); } ^ terms/TermStorage.h:97:46: note: in instantiation of member function '__gnu_cxx::hash_map<long long, unsigned int, boost::hash<long long>, std::equal_to<long long>, std::allocator<unsigned int> >::find' requested here TsHashMapIter iter = mParent->mHashMap.find(t); ^ terms/TermStorage.cpp:85:47: note: in instantiation of member function 'powerset::xfr::TermHashStorage<long long>::hashInsert' requested here uint32_t index = (uint32_t) mIntTermStorage.hashInsert(intVal); ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:105:24: note: candidate function inline std::size_t hash_value(int v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:110:24: note: candidate function inline std::size_t hash_value(unsigned int v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:115:24: note: candidate function inline std::size_t hash_value(long v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:120:24: note: candidate function inline std::size_t hash_value(unsigned long v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:229:24: note: candidate function inline std::size_t hash_value(float v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:234:24: note: candidate function inline std::size_t hash_value(double v) ^ /usr/local/include/boost-1_34_1/boost/functional/hash/hash.hpp:239:24: note: candidate function inline std::size_t hash_value(long double v) ^ 1 error generated. make[1]: *** [terms/TermStorage.o] Error 1 make: *** [build] Error 2 Sebastian-Sulgers-MacBook-Pro:dev sebastiansulger$ -- Sebastian Sulger FB Sprachwissenschaft Universität Konstanz http://ling.uni-konstanz.de/pages/home/sulger
participants (1)
-
Sebastian Sulger