[MacPorts] #48012: nettle @2.7.1: error: no member named 'ptrdiff_t' in the global namespace

MacPorts noreply at macports.org
Wed Jun 10 23:44:45 PDT 2015


#48012: nettle @2.7.1: error: no member named 'ptrdiff_t' in the global namespace
--------------------------+--------------------------
  Reporter:  m74z00219@…  |      Owner:  ryandesign@…
      Type:  defect       |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.3.3
Resolution:               |   Keywords:
      Port:  nettle       |
--------------------------+--------------------------

Comment (by ryandesign@…):

 Replying to [comment:3 m74z00219@…]:
 > To give a little more context, I had been attempting to install the port
 youtube-dl, which depends on ffmpeg, which depends on gnutls, which
 depends on nettle. While I'm not exactly sure of what constitutes a
 "broken" port (perhaps being interrupted during build?), I believe that
 list must have comprised the aforementioned ports. Unfortunately, I've
 already uninstalled youtube-dl and its dependencies. However, I did just
 just attempt to install nettle again (new log attached).
 >
 > My Xcode version is 6.3.2 (build 6D2105). My clang, which I actually
 upgraded today in hopes that it would help with nettle, is version 3.7.0
 (trunk 239386); Target: x86_64-apple-darwin14.4.0; Thread model: posix.
 >
 > Since I uninstalled youtube-dl and it's dependencies -- save nettle --
 I'm not sure if ""sudo port -v rev-upgrade"" will yield much. My eyes
 don't see anything meaningful, so I attached it to this ticket.

 Thanks, that helps.

 A "broken" port is one linked with libraries that don't exist or that are
 the wrong version.

 From your log:

 {{{
 Incompatible library version: /opt/local/bin/nettle-hash requires version
 13.0.0 or later, but /opt/local/lib/libgmp.10.dylib provides version
 11.0.0
 Incompatible library version: /opt/local/bin/nettle-lfib-stream requires
 version 13.0.0 or later, but /opt/local/lib/libgmp.10.dylib provides
 version 11.0.0
 Incompatible library version: /opt/local/bin/pkcs1-conv requires version
 13.0.0 or later, but /opt/local/lib/libgmp.10.dylib provides version
 11.0.0
 Incompatible library version: /opt/local/bin/sexp-conv requires version
 13.0.0 or later, but /opt/local/lib/libgmp.10.dylib provides version
 11.0.0
 Incompatible library version: /opt/local/lib/libhogweed.2.5.dylib requires
 version 13.0.0 or later, but /opt/local/lib/libgmp.10.dylib provides
 version 11.0.0
 }}}

 So the files installed by nettle are linked with gmp libraries version 13,
 which is how it should be: that's the version of the gmp libraries on my
 system. But for some reason you have gmp libraries version 11 on your
 system.

 You have somehow replaced your gmp libraries with older versions, without
 MacPorts knowing about this. Perhaps you ran a third-party installer that
 overwrote these files?

 You need to get gmp libraries version 13 back onto your system. One way to
 do that is to force gmp to rebuild:

 {{{
 sudo port -n upgrade --force gmp
 }}}

 Then nettle will no longer be considered broken.

 However, if gmp files were overwritten on your system, who knows how many
 other files from other ports were also overwritten... The safest thing to
 do would be to
 [https://guide.macports.org/chunked/installing.macports.uninstalling.html
 uninstall] all ports, and MacPorts itself, including deleting /opt/local
 entirely, after having saved any important data or configuration file
 therein, then reinstalling MacPorts and the ports you want. That way you
 can be sure only files in the MacPorts prefix are the ones MacPorts put
 there.

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


More information about the macports-tickets mailing list