#65894 closed defect (fixed)

libjxl: builds fail for 10.7 thru 10.11, due to undefined symbols; fixable via macports-libcxx

Reported by: mascguy (Christopher Nielsen) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: Cc:
Port: libjxl

Description

Compilation fails for 10.7 thru 10.11, with the following. Based on local testing, use of pg legacysupport/macports-libcxx is enough to take care of it, though:

Undefined symbols for architecture x86_64:
  "operator delete(void*, unsigned long)", referenced from:
      jpegxl::(anonymous namespace)::ResizeableParallelRunner::SetNumThreads(unsigned long) in resizable_parallel_runner.cc.o
      _JxlResizableParallelRunnerDestroy in resizable_parallel_runner.cc.o
      __ZNSt3__114__thread_proxyINS_5tupleIJNS_10unique_ptrINS_15__thread_structENS_14default_deleteIS3_EEEEZN6jpegxl12_GLOBAL__N_124ResizeableParallelRunner13SetNumThreadsEmEUlvE_EEEEEPvSC_ in resizable_parallel_runner.cc.o
      std::__1::vector<std::__1::thread, std::__1::allocator<std::__1::thread> >::__append(unsigned long) in resizable_parallel_runner.cc.o
      std::__1::vector<std::__1::thread, std::__1::allocator<std::__1::thread> >::reserve(unsigned long) in thread_parallel_runner_internal.cc.o
      jpegxl::ThreadParallelRunner::~ThreadParallelRunner() in thread_parallel_runner_internal.cc.o
      __ZNSt3__16vectorINS_6threadENS_9allocatorIS1_EEE24__emplace_back_slow_pathIJRFvPN6jpegxl20ThreadParallelRunnerEiES8_RjEEEvDpOT_ in thread_parallel_runner_internal.cc.o
      ...
ld: symbol(s) not found for architecture x86_64

With that fix in place, the final link fails, due to use of --exclude-libs=ALL. Presumably that is also easily-fixable.

Change History (2)

comment:1 Changed 19 months ago by jmroot (Joshua Root)

In 45e679c9a066913e42b484ae6462f37e1a615f96/macports-ports (master):

libjxl: Don't use -fsized-deallocation on < 10.12

See: #65894

comment:2 Changed 19 months ago by jmroot (Joshua Root)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.