Third party media library Compilation error in IOS due to libstdc++ / libc++

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Guys,

 

Am trying to compile pjsip with third party media library.

 

I was getting below error,

 

      ...
  "std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)", referenced from:
      _CriticalSection_Destroy in libmedia_manager_clang.ub.a(_2JC4KJDRF4C23C.o)
      SYMBOL_00001521 in libmedia_manager_clang.ub.a(_M3LA9D7KKT.o)
  "std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)", referenced from:
      SYMBOL_00011459 in libmedia_manager_clang.ub.a(_2JC4KJDRF4C23C.o)
      SYMBOL_00011461 in libmedia_manager_clang.ub.a(_2JC4KJDRF4C23C.o)
      SYMBOL_00001524 in libmedia_manager_clang.ub.a(_M3LA9D7KKT.o)
ld: symbol(s) not found for architecture armv7

 

To solve the above error I included -stdlib=libstdc++ in the configure-iphone. 

 

But i ended up in another error. Please find the error below with the warning,

 

clang: warning: libstdc++ is deprecated; move to libc++ [-Wdeprecated]

 

"std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::compare(unsigned long, unsigned long, char const*, unsigned long) const", referenced from:
      pj::SipTxOption::isEmpty() const in libpjsua2-arm-apple-darwin9.a(siptypes.o)
  "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
      void std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::__push_back_slow_path<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in libpjsua2-arm-apple-darwin9.a(endpoint.o)
      std::__1::enable_if<(__is_forward_iterator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::value) && (is_constructible<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::iterator_traits<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::reference>::value), void>::type std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::assign<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) in libpjsua2-arm-apple-darwin9.a(endpoint.o)
      std::__1::vector<int, std::__1::allocator<int> >::vector<int*>(int*, std::__1::enable_if<(__is_forward_iterator<int*>::value) && (is_constructible<int, std::__1::iterator_traits<int*>::reference>::value), int*>::type) in libpjsua2-arm-apple-darwin9.a(endpoint.o)
      void std::__1::vector<pj::AudioMedia*, std::__1::allocator<pj::AudioMedia*> >::__push_back_slow_path<pj::AudioMedia* const>(pj::AudioMedia* const&) in libpjsua2-arm-apple-darwin9.a(endpoint.o)
      void std::__1::vector<pj::CodecInfo*, std::__1::allocator<pj::CodecInfo*> >::__push_back_slow_path<pj::CodecInfo* const>(pj::CodecInfo* const&) in libpjsua2-arm-apple-darwin9.a(endpoint.o)
      void std::__1::vector<pj::CallMediaInfo, std::__1::allocator<pj::CallMediaInfo> >::__push_back_slow_path<pj::CallMediaInfo const>(pj::CallMediaInfo const&) in libpjsua2-arm-apple-darwin9.a(call.o)
      void std::__1::vector<pj::Media*, std::__1::allocator<pj::Media*> >::__push_back_slow_path<pj::Media* const>(pj::Media* const&) in libpjsua2-arm-apple-darwin9.a(call.o)

 

When I include -stdlib=libc++ as per the warning, I get the 1st error again.

 

I have tried added both , i.e -stdlib=libc++ & -stdlib=libstdc++. But ends up again in 2nd error.

 

Can anyone help me out here please.

 

Thanks,

Vivek.

_______________________________________________
Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@xxxxxxxxxxxxxxx
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux