[MacPorts] #68486: libfido2 @1.13.0: error: use of undeclared identifier 'kIOMainPortDefault'

MacPorts noreply at macports.org
Tue Oct 17 04:55:12 UTC 2023


#68486: libfido2 @1.13.0: error: use of undeclared identifier 'kIOMainPortDefault'
--------------------------+--------------------
  Reporter:  jasperweiss  |      Owner:  (none)
      Type:  defect       |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.8.1
Resolution:               |   Keywords:  sonoma
      Port:  libfido2     |
--------------------------+--------------------

Comment (by ryandesign):

 Replying to [comment:2 jasperweiss]:
 > I've honestly never had the need to install Xcode so far.

 That's fine. Most ports build fine with only the CLT. Those that need
 Xcode should tell you, although the ability for portfiles to indicate the
 Xcode requirement is only a few years old so there may still be old ports
 in the collection that need Xcode but that do not so indicate.

 You can even get away without the CLT if you only install ports for which
 we provide binaries. We only just started building Intel binaries for
 macOS 14 a few days ago and have not yet started to build arm64 binaries
 for it so on macOS 14 you're unlikely to get away without the CLT.

 > My understanding is that build dependencies are handled by port itself
 (which in the case of libfido2 should be clang-15, cmake, mandoc,
 pkgconfig). Libfido2 did build just fine a little while ago (without Xcode
 installed). Isn't port supposed to take care of all the dependencies?
 Installing a port on a new system usually starts off building old versions
 of clang up until the version it requires

 MacPorts takes care of those dependencies which are provided by MacPorts,
 such as cmake, pkgconfig, etc.—anything listed in `port deps`.

 Xcode and the CLT are not provided by MacPorts. You're expected to have
 installed one or the other or both prior to using MacPorts.

 libfido2 does not require clang-15. You can confirm this by running `port
 deps libfido2`. If you believed it does because it says so on the
 ports.macports.org web site, the ports web site is in error because its
 data is generated on a non-macOS operating system where clang-15 is
 apparently a dependency of most or all ports. Or, if `port deps libfido2`
 does really show clang-15 on your system, that would be presumably be
 evidence that MacPorts could not find a compiler from either Xcode or the
 CLT and tried to use a MacPorts version instead, but the intended way to
 use MacPorts on macOS is to have Xcode and/or the CLT installed so that
 that compiler can be used for most ports. (Some ports—not libfido2—do have
 more specific compiler requirements and might actually configure
 themselves to use specific versions of MacPorts clang.)

 Replying to [comment:3 jmroot]:
 > {{{
 > :debug:sysinfo Xcode none, CLT none
 > }}}
 > Since /usr/bin/clang appears to be mostly working, you almost certainly
 have outdated Command Line Tools installed and need to follow
 ProblemHotlist#reinstall-clt as Ryan mentioned.

 The log also says:

 {{{
 :info:configure -- The C compiler identification is AppleClang
 12.0.0.12000026
 }}}

 Looking at XcodeVersionInfo, it looks like that corresponds to some Xcode
 version between 12.0 and 12.4, which were for macOS 10.15 and macOS 11.

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


More information about the macports-tickets mailing list