Opened 3 years ago

Last modified 3 years ago

#62242 closed defect

boost @1.71.0_3: needs cxa_thread_atexit (thread local support in libc++/libc++abi) on < 10.7 — at Initial Version

Reported by: kencu (Ken) Owned by: kencu (Ken)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: michaelld (Michael Dickens)
Port: boost libcxx

Description

the buildbot has the non-thread-local-enabled version of libcxx installed, and so boost fails:

Undefined symbols for architecture x86_64:
  "___cxa_thread_atexit", referenced from:
      boost::context::detail::ecv1_activation_record::current() in execution_context.o
      boost::context::detail::ecv1_activation_record_initializer::ecv1_activation_record_initializer() in execution_context.o
      boost::context::detail::ecv1_activation_record_initializer::ecv1_activation_record_initializer() in execution_context.o
      boost::context::detail::ecv1_activation_record_initializer::~ecv1_activation_record_initializer() in execution_context.o
      boost::context::detail::ecv1_activation_record_initializer::~ecv1_activation_record_initializer() in execution_context.o
      boost::context::v1::execution_context::current() in execution_context.o
ld: symbol(s) not found for architecture x86_64

I never see this error, as hopefully most users never see it, as they have manually upgrade libcxx to the +thread_local variant.

This ticket really has nothing to do with boost, just leaving it here in case anyone goes looking for the reason boost is failing.

I'll assign it to me, as there is nothing (I believe) fro the boost maintainer to do here... unless there is a simple toggle to turn off thread_local support in c++ on boost, in which case we could turn it off manually (sigh).

Change History (0)

Note: See TracTickets for help on using tickets.