[MacPorts] #44729: ImageMagick: Undefined symbols _crc32 _zlibVersion

MacPorts noreply at macports.org
Thu Aug 21 17:20:38 PDT 2014


#44729: ImageMagick: Undefined symbols _crc32 _zlibVersion
--------------------------+--------------------------
  Reporter:  jmhanly@…    |      Owner:  ryandesign@…
      Type:  defect       |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.3.1
Resolution:               |   Keywords:
      Port:  ImageMagick  |
--------------------------+--------------------------

Comment (by ryandesign@…):

 Looking more closely at your log, I see this line:

 {{{
 :info:build ld: warning: ignoring file /opt/local/lib/libz.dylib, missing
 required architecture x86_64 in file /opt/local/lib/libz.dylib (2 slices)
 }}}

 MacPorts ensures that the architectures of dependencies (in this case
 zlib) match the architectures of the port you're about to install
 (ImageMagick), according to MacPorts' installation registry. Despite that
 check, it appears that your zlib doesn't actually contain x86_64 code. To
 verify these things, you can run:

 {{{
 port -v installed zlib
 lipo -info /opt/local/lib/libz.dylib
 }}}

 The first command shows the architectures MacPorts recorded that it
 installed the port for, and the latter shows the architecture actually in
 the file on disk now. If your system is in the state I think it's in, then
 the first command will show that MacPorts thinks zlib is installed for
 x86_64, but the second command will show a different architecture (or
 architectures).

 One way this can happen is if you ran a third-party installer that was
 itself built with MacPorts (configured for different architectures) which
 overwrote your MacPorts-installed files. Could that be? If so, let us know
 what third-party installer it was.

 To fix this problem for zlib, you should deactivate and reactivate zlib:

 {{{
 sudo port -f deactivate zlib
 sudo port activate zlib
 }}}

 This will remove all the zlib files, then re-extract them from the archive
 MacPorts created at original install time.

 And then clean ImageMagick and try again.

 However, if some third-party installer replaced zlib, who knows what else
 it replaced. You could ensure that all files of ports you have installed
 are the ones they should be by deactivating all active ports, then re-
 activating them again. I can give you instructions on that later if
 necessary.

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


More information about the macports-tickets mailing list