Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#32253 closed defect (fixed)

ld64@85.2.1 Unable to verify file checksums

Reported by: desmond_toa@… Owned by: mfeiri
Priority: Normal Milestone:
Component: ports Version: 2.0.3
Keywords: haspatch lion Cc: daitakahashi, kyle.tarplee@…, macports@…, jacobu@…
Port: ld64

Description (last modified by mf2k (Frank Schima))

--->  Computing dependencies for llvm-gcc42
--->  Dependencies to be installed: ld64
--->  Verifying checksum(s) for ld64
Error: Checksum (md5) mismatch for dyld_priv.h
Error: Checksum (sha1) mismatch for dyld_priv.h
Error: Checksum (rmd160) mismatch for dyld_priv.h
Error: Target org.macports.checksum returned: Unable to verify file checksums
Error: Failed to install ld64
Log for ld64 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_ld64/ld64/main.log
Error: The following dependencies were not installed: ld64
Error: Status 1 encountered during processing.

Attachments (3)

ld64.diff (1.4 KB) - added by ryandesign (Ryan Schmidt) 9 years ago.
proposed patch
Portfile.diff (1.8 KB) - added by daitakahashi 9 years ago.
dyld_prev.diff (3.0 KB) - added by daitakahashi 9 years ago.
difference between dyld_prev 132.13 and 195.5

Download all attachments as: .zip

Change History (16)

comment:1 Changed 9 years ago by mf2k (Frank Schima)

Cc: mfeiri@… removed
Description: modified (diff)
Owner: changed from macports-tickets@… to mfeiri@…

Please read the FAQ on checksum errors, you did not provide the download mirror.

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

Keywords: haspatch added

Well since it's an unversioned distfile it's obviously a stealth update. Here's a patch.

Changed 9 years ago by ryandesign (Ryan Schmidt)

Attachment: ld64.diff added

proposed patch

comment:3 Changed 9 years ago by mfeiri

Resolution: worksforme
Status: newclosed

I can not reproduce this error. First, these files are not downloaded for ld64@85.2.1. I checked on a darwin9 machine and didnt see these files. And second, I verified the current checksums on a darwin10 machine using "port clean --all ld64; port check ld64" and everything looks fine. Feel free to reopen this ticket if the problem is reproducible in some other way.

comment:4 Changed 9 years ago by daitakahashi

Resolution: worksforme
Status: closedreopened

This problem still exists. I tried to install ld64 on Lion machine today, but it stoped with the same error with this issue. The suggested commands port clean --all ld64 and port check ld64 returned,

$ sudo port clean --all ld64
--->  Cleaning ld64
$ sudo port check ld64
--->  Fetching ld64
--->  Attempting to fetch ld64-127.2.tar.gz from http://opensource.apple.com/tarballs/ld64/
--->  Attempting to fetch dyld_priv.h from http://opensource.apple.com/source/dyld/dyld-195.5/include/mach-o/dyld_priv.h?txt&dummy=
--->  Attempting to fetch reloc.h from http://opensource.apple.com/source/cctools/cctools-806/include/mach-o/arm/reloc.h?txt&dummy=
--->  Verifying checksum(s) for ld64
Error: Checksum (md5) mismatch for dyld_priv.h
Error: Checksum (sha1) mismatch for dyld_priv.h
Error: Checksum (rmd160) mismatch for dyld_priv.h
Error: Target org.macports.checksum returned: Unable to verify file checksums
Log for ld64 is at: /opt/local/var/macports/logs/_LocalPort_port_devel_ld64/ld64/main.log
Error: Status 1 encountered during processing.

and checksums of downloaded dyld_prev.h were different from that in the current portfile (r86656),

$ for x in "md5" "sha1" "rmd160";do openssl dgst -$x dyld_priv.h ;done
MD5(dyld_priv.h)= f553d448c70abe57b2f7f85fcca8c59e
SHA1(dyld_priv.h)= bc699271351794c3fa30e93f18ff2646780ee125
RIPEMD160(dyld_priv.h)= 5ab99fdb47eda0ce2dcda5b57a7d3d3f02e627e7

The results of both Lion and Snow leopard (different machines) were the same. I tried a patch proposed above, but unfortunately it did not resolve this issue here.

comment:5 Changed 9 years ago by daitakahashi

Cc: dtakahashi42@… added

Cc Me!

comment:6 Changed 9 years ago by kyle.tarplee@…

Cc: kyle.tarplee@… added

Cc Me!

comment:7 Changed 9 years ago by kyle.tarplee@…

I know of two other machines that are having the same problem (mine and one other). We have not been able to install ld64 on any machine yet.

comment:8 Changed 9 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:9 Changed 9 years ago by daitakahashi

Here is a patch to change checksums of "dyld_prev.h" to those of currently available one (downloaded by port fetch ld64). Since archive install bypasses fetch and check phases, this issue does not affect (most of) intel snow-leopard systems (and darwin9 systems do not use dyld_prev.h).

However, a lion system (currently there is no ld64 archive for lion) cannot install this port and its dependencies due to this checksum mismatch.

Changed 9 years ago by daitakahashi

Attachment: Portfile.diff added

comment:10 Changed 9 years ago by jacobu@…

Cc: jacobu@… added

Cc Me!

comment:11 Changed 9 years ago by daitakahashi

Here is a difference between currently downloaded dyld_prev.h and that of the previous version. The previous version, which has the same checksums as expected at the portfile, is still available at dyld 132.13.

Changed 9 years ago by daitakahashi

Attachment: dyld_prev.diff added

difference between dyld_prev 132.13 and 195.5

comment:12 Changed 9 years ago by neverpanic (Clemens Lang)

Keywords: lion added
Resolution: fixed
Status: reopenedclosed

Committed to get the port back to a working state in r89791.

comment:13 Changed 9 years ago by mfeiri

Turns out that this bug was only seen by a set of users with faster pings to opensource.apple.com than to any of the macports mirrors. Anyway, thanks to ryandesign and cal for suggesting and committing a working patch in r89793. In r90363 I've now uploaded a far better solution, turning these unversioned header files into proper dependencies.

Note: See TracTickets for help on using tickets.