[MacPorts] #65908: lzma @22.01_0 - Unable to upgrade lzma - cxx_stdlib mismatch

MacPorts noreply at macports.org
Sun Oct 2 03:58:24 UTC 2022


#65908: lzma @22.01_0 - Unable to upgrade lzma - cxx_stdlib mismatch
---------------------+-------------------------------
  Reporter:  RobK88  |      Owner:  ryandesign
      Type:  defect  |     Status:  accepted
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:  2.7.2
Resolution:          |   Keywords:  lion mountainlion
      Port:  lzma    |
---------------------+-------------------------------
Changes (by ryandesign):

 * owner:  (none) => ryandesign
 * cc: ryandesign (removed)
 * status:  new => accepted
 * keywords:  lion => lion mountainlion


Comment:

 Replying to [comment:6 chillin-]:
 > I am unclear on why this install isn't building with clang9 by default.

 Because this port does not require such a new compiler.

 Rather, this port's build system fails to pass some compiler flags on when
 it needs to. Xcode versions of clang from OS X 10.8 and earlier default to
 using libstdc++, whereas MacPorts switched some years ago to default to
 libc++ on those systems. In the absence of the required flags, the build
 system erroneously builds the port for libstdc++ when we want it to build
 for libc++.

 Newer MacPorts clang versions default to using libc++ which is a
 workaround you can use but not something I will commit to the port because
 it's overkill. Instead, I'll fix the build system to pass along the flags.
 This will fix not only this problem but other as-yet-unreported problems
 as well.

 Replying to [comment:7 RobK88]:
 > Unfortunately, most of the MacPorts developers do not have time (or even
 an old Mac running an old MacOS) to fix build problems on old Macs.

 It is not necessary to use an old Mac or an old OS X version to verify
 that the problem exists nor whether one has succeeded in fixing it; it
 suffices to examine the build log on any macOS version to see whether the
 `-stdlib` flags are present everywhere they need to be (on every C++
 compiler and linker invocation). I can see by looking at the logs from the
 buildbot that the `-stdlib` flag hasn't been used anywhere, and neither
 have the optimization flags we want to use. (It has instead used `-O2`.)

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


More information about the macports-tickets mailing list