[ https://issues.apache.org/jira/browse/THRIFT-2492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13976822#comment-13976822 ]
ASF GitHub Bot commented on THRIFT-2492: ---------------------------------------- GitHub user apesternikov opened a pull request: https://github.com/apache/thrift/pull/106 THRIFT-2492 use tcxx instead of tr1 in test/cpp THRIFT-2492 Now it complies, but fails to link later: /Applications/Xcode.app/Contents/Developer/usr/bin/make TestServer TestClient StressTest StressTestNonBlocking /bin/sh ../../libtool --tag=CXX --mode=link g++ -Wall -std=c++11 -stdlib=libc++ -L/usr/local/lib -L/usr/local/opt/openssl/lib -o TestServer TestServer.o libtestgencpp.la ../../lib/cpp/libthrift.la ../../lib/cpp/libthriftz.la ../../lib/cpp/libthriftnb.la -levent -lboost_program_options -lssl -lcrypto -lpthread libtool: link: g++ -Wall -std=c++11 -stdlib=libc++ -o .libs/TestServer TestServer.o -Wl,-bind_at_load -L/usr/local/lib -L/usr/local/opt/openssl/lib ./.libs/libtestgencpp.a /Users/ap/thrift-dev/lib/cpp/.libs/libthrift.dylib ../../lib/cpp/.libs/libthrift.dylib ../../lib/cpp/.libs/libthriftz.dylib ../../lib/cpp/.libs/libthriftnb.dylib -levent -lboost_program_options -lssl -lcrypto -lpthread Undefined symbols for architecture x86_64: "thrift::test::Insanity::operator<(thrift::test::Insanity const&) const", referenced from: std::__1::__tree_node_base<void*>*& std::__1::__tree<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__map_value_compare<thrift::test::Insanity, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::less<thrift::test::Insanity>, true>, std::__1::allocator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >::__find_equal<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >(std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long>, std::__1::__tree_node_base<void*>*&, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&) in libtestgencpp.a(ThriftTest_types.o) std::__1::__tree_node_base<void*>*& std::__1::__tree<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__map_value_compare<thrift::test::Insanity, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::less<thrift::test::Insanity>, true>, std::__1::allocator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >::__find_equal<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >(std::__1::__tree_node_base<void*>*&, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&) in libtestgencpp.a(ThriftTest_types.o) bool std::__1::__lexicographical_compare<std::__1::__less<std::__1::pair<thrift::test::Insanity const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::pair<thrift::test::Insanity const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&, std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> >, std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> > >(std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> >, std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> >, std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> >, std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__tree_node<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void*>*, long> >, std::__1::__less<std::__1::pair<thrift::test::Insanity const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::pair<thrift::test::Insanity const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) in libtestgencpp.a(ThriftTest_types.o) std::__1::__tree<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::__map_value_compare<thrift::test::Insanity, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::less<thrift::test::Insanity>, true>, std::__1::allocator<std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >::__find_leaf_high(std::__1::__tree_node_base<void*>*&, std::__1::__value_type<thrift::test::Insanity, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&) in libtestgencpp.a(ThriftTest_types.o) std::__1::__tree<thrift::test::Insanity, std::__1::less<thrift::test::Insanity>, std::__1::allocator<thrift::test::Insanity> >::__find_leaf_high(std::__1::__tree_node_base<void*>*&, thrift::test::Insanity const&) in libtestgencpp.a(ThriftTest_types.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: *** [TestServer] Error 1 make: *** [check-am] Error 2 Interestingly, "thrift::test::Insanity::operator<(thrift::test::Insanity const&) const" is declared in ThriftTest_types.h as bool operator < (const Insanity & ) const; but never defined. You can merge this pull request into a Git repository by running: $ git pull https://github.com/apesternikov/thrift test_cpp_on_mac Alternatively you can review and apply these changes as the patch at: https://github.com/apache/thrift/pull/106.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #106 ---- commit a6ed88196fbf4622a3b0261bbac0fe6b258bdd36 Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net> Date: 2014-04-22T14:19:13Z use tcxx instead of tr1 in test/cpp ---- > test/cpp does not compile on mac > -------------------------------- > > Key: THRIFT-2492 > URL: https://issues.apache.org/jira/browse/THRIFT-2492 > Project: Thrift > Issue Type: Bug > Components: C++ - Library > Environment: OS X 10.9.2 > Reporter: Aleksey Pesternikov > > test/cpp fails to compile since it is using tr1 namespace. -- This message was sent by Atlassian JIRA (v6.2#6252)