Opened 2 years ago

Closed 7 months ago

#65248 closed defect (fixed)

mkvtoolnix 53.0 undefined symbols error – anything familiar?

Reported by: barracuda156 Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: powerpc, leopard, snowleopard Cc:
Port: mkvtoolnix

Description

After fixing build of 41.0.0 I tried to build 53.0.0 (mostly just to test if my Ruby31 works), but I get one linking error. Is this something familiar?

Undefined symbols:
  "__ZN3fmt2v86detail12format_floatIgEEiT_iNS1_11float_specsERNS1_6bufferIcEE", referenced from:
      __ZN3fmt2v86detail5writeIcNS0_8appenderEgLi0EEET0_S4_T1_NS0_18basic_format_specsIT_EENS1_10locale_refE in libmtxcommon.a(bcp47.o)
  "__ZN3fmt2v86detail14snprintf_floatIgEEiT_iNS1_11float_specsERNS1_6bufferIcEE", referenced from:
      __ZN3fmt2v86detail5writeIcNS0_8appenderEgLi0EEET0_S4_T1_NS0_18basic_format_specsIT_EENS1_10locale_refE in libmtxcommon.a(bcp47.o)
ld: symbol(s) not found
collect2: error: ld returned 1 exit status

Both 53.0.0 and 55.0.0 fail on the same symbol. It seems that headers from lib/fmt/include/fmt may be at fault (format.h or format-inl.h). However I cannot figure out which exactly line of code causes this error. Otherwise it could be made conditional on OS version, and the build may succeed.

Change History (3)

comment:1 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

The mkvtoolnix port uses version 41.0.0 on macOS 10.12 and earlier, so it sounds like you've modified the port to try to install a newer version, and it doesn't work. In that case, you're on your own.

comment:2 in reply to:  1 Changed 2 years ago by barracuda156

Replying to ryandesign:

The mkvtoolnix port uses version 41.0.0 on macOS 10.12 and earlier, so it sounds like you've modified the port to try to install a newer version, and it doesn't work. In that case, you're on your own.

Yes, I just asked in case this is familiar error from other ports. It well may be fixable.

If you don't mind, please leave the ticket opened for a while, as WIP. (I do not expect others fix stuff for me, but I will try fix it myself.)

  1. S. Portfile gives a reason of C++17, but we do have C++17 compiler on 10.5+ now. This is why I tried building a later version.
Last edited 2 years ago by barracuda156 (previous) (diff)

comment:3 Changed 7 months ago by i0ntempest

Resolution: fixed
Status: assignedclosed

In df2b1db7dd14deea5ab1bb403be243317870b6a9/macports-ports (master):

mkvtoolnix: overhaul & update to 83.0

Add myself as maintainer
Closes: #62648
Closes: #65248
Closes: #67391
Closes: #68771
Closes: #69030

Note: See TracTickets for help on using tickets.