[MacPorts] #68640: clang-17: builds some software that does not link on older macOS: Undefined symbols "std::__1::__libcpp_verbose_abort

MacPorts noreply at macports.org
Sun Apr 7 14:28:57 UTC 2024


#68640: clang-17: builds some software that does not link on older macOS: Undefined
symbols "std::__1::__libcpp_verbose_abort
-------------------------------------------------+----------------------
  Reporter:  snowflake                           |      Owner:  dbevans
      Type:  defect                              |     Status:  assigned
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:  2.8.99
Resolution:                                      |   Keywords:
      Port:  clang-17, poppler, gjs, gegl, mesa  |
-------------------------------------------------+----------------------

Comment (by kencu):

 this seems to fix this issue for clang-16 when using macports-libcxx, by
 defining the noted define when the availability settings are disabled:

 {{{
 $ diff -u /opt/local/libexec/llvm-16/include/c++/v1/__availability.orig
 /opt/local/libexec/llvm-16/include/c++/v1/__availability
 --- /opt/local/libexec/llvm-16/include/c++/v1/__availability.orig
 2024-04-07 07:21:22.000000000 -0700
 +++ /opt/local/libexec/llvm-16/include/c++/v1/__availability    2024-04-07
 07:22:05.000000000 -0700
 @@ -159,7 +159,7 @@
      // This controls whether the library claims to provide a default
 verbose
      // termination function, and consequently whether the headers will
 try
      // to use it when the mechanism isn't overriden at compile-time.
 -// #   define _LIBCPP_HAS_NO_VERBOSE_ABORT_IN_LIBRARY
 +#   define _LIBCPP_HAS_NO_VERBOSE_ABORT_IN_LIBRARY

  #elif defined(__APPLE__)

 }}}

 I would suspect something similar will fix clang-17.

 It needs a bit of broader testing, from a few interested folks, and then
 if it is indeed robust, it's a very very trivial patch to the installed
 clang cxx headers.

-- 
Ticket URL: <https://trac.macports.org/ticket/68640#comment:39>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list