From: Warren Young Date: November 21 2008 5:00am Subject: Re: report incompatible thing List-Archive: http://lists.mysql.com/plusplus/8187 Message-Id: MIME-Version: 1.0 (Apple Message framework v929.2) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit On Nov 20, 2008, at 7:59 PM, Xin Qi wrote: > I compile mysql++ both with boost_1_36, but the code can not go > through gcc > 4.2.4 because there are conflicts > between > ./boost/concept_check.hpp: BOOST_concept(Comparable,(TT)) > ./boost/concept_check.hpp: BOOST_CONCEPT_USAGE(Comparable) { > ./boost/concept_check.hpp: , EqualityComparable > ./boost/concept_check.hpp: , Comparable > and > /mysqlpp/datetime.h: class MYSQLPP_EXPORT DateTime : public > Comparable > > but when I change boost 1.34, the code could be compiled successfully. There should only be a conflict if you hoist the symbols from both libraries into the global namespace, with "using namespace mysqlpp" and similar for Boost. The conflict should be avoidable if you remove these "using" statements and refer to both libraries' through their full namespaces. So: mysqlpp::DateTime instead of just DateTime.