Opened 10 years ago
Closed 10 years ago
#43949 closed defect (worksforme)
gmp install fails with :debug:extract Error code: NONE
Reported by: | brookemgilbert@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.0 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt) | |
Port: | gmp |
Description
Hello, I am having a problem installing gmp. I noticed this because it was causing gcc install to fail (as gmp is a dependency). It appears to fail when extracting the archive, however I can manually extract the .tar.gz with no problem. Output is below; I will attach the .log file.
$ sudo port install gmp ---> Extracting gmp Error: org.macports.extract for port gmp returned: Please see the log file for port gmp for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gmp/gmp/main.log To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets Error: Processing of port gmp failed
Attachments (4)
Change History (17)
Changed 10 years ago by brookemgilbert@…
Attachment: | macports_bugreport_attachment.txt added |
---|
comment:1 follow-up: 2 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
That's a surprisingly cryptic error message. But, the log does show this was not a clean attempt, so please "sudo port clean gmp", then try again and attach the new log if it fails again.
Changed 10 years ago by brookemgilbert@…
Attachment: | main.log_clean_attempt.txt added |
---|
main.log after 'port clean gmp'
comment:2 Changed 10 years ago by brookemgilbert@…
Replying to ryandesign@…:
That's a surprisingly cryptic error message. But, the log does show this was not a clean attempt, so please "sudo port clean gmp", then try again and attach the new log if it fails again.
Ah I already tried that. But here's output anyway. Attached new log as main.log_clean_attempt.txt. Everything's the same, if I'm not mistaken. Cheers for the quick response.
$ sudo port clean gmp Password: ---> Cleaning gmp [1] Done /Applications/Emacs.app/Contents/MacOS/Emacs-10.7 /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gmp/gmp/main.log [2]- Done /Applications/Emacs.app/Contents/MacOS/Emacs-10.7 /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gmp/gmp/main.log $ sudo port install gmp Warning: Your DNS servers incorrectly claim to know the address of nonexistent hosts. This may cause checksum mismatches for some ports. See this page for more information: <https://trac.macports.org/wiki/MisbehavingServers> ---> Fetching distfiles for gmp ---> Verifying checksums for gmp ---> Extracting gmp Error: org.macports.extract for port gmp returned: Please see the log file for port gmp for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gmp/gmp/main.log To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets Error: Processing of port gmp failed
comment:3 follow-up: 4 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Thanks, that's a clean log. It shows the output from all phases, including the fetch phase, which your previous log did not include because it had already been completed previously.
It shows this message:
:warn:archivefetch Your DNS servers incorrectly claim to know the address of nonexistent hosts. This may cause checksum mismatches for some ports. See this page for more information: <https://trac.macports.org/wiki/MisbehavingServers>
You should have also seen that message in the terminal. It is possible that because of this problem with your DNS servers, the correct file was not downloaded, and it therefore cannot be extracted. Though that should not be the case, since the checksum phase passed, meaning the file you got should be the correct one. But let's take a look at the file that got downloaded. What do you get for these commands:
ls -l /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 file /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 openssl dgst -sha256 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2
comment:4 follow-up: 5 Changed 10 years ago by brookemgilbert@…
Replying to ryandesign@…:
Thanks, that's a clean log. It shows the output from all phases, including the fetch phase, which your previous log did not include because it had already been completed previously.
It shows this message:
:warn:archivefetch Your DNS servers incorrectly claim to know the address of nonexistent hosts. This may cause checksum mismatches for some ports. See this page for more information: <https://trac.macports.org/wiki/MisbehavingServers>
I looked into that a while back and read this topic about it. I think the problem is that my ISP automatically redirects me to a search page if I request a nonexistent address. I don't think that's under my control, but if it's important I could call them to see if they can turn it off...
What do you get for these commands:
ls -l /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 file /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 openssl dgst -sha256 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2
I've got:
$ ls -l /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 -rw-r--r-- 1 macports admin 2319400 5 May 03:01 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 $ file /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2: bzip2 compressed data, block size = 900k $ openssl dgst -sha256 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 SHA256(/opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2)= 7f8e9a804b9c6d07164cf754207be838ece1219425d64e28cfa3e70d5c759aaf
comment:5 follow-up: 6 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|
Replying to brookemgilbert@…:
I looked into that a while back and read this topic about it. I think the problem is that my ISP automatically redirects me to a search page if I request a nonexistent address.
The problem is that the DNS servers you are using return results for queries which should fail. The search page you mentioned is another symptom of this same problem.
I don't think that's under my control, but if it's important I could call them to see if they can turn it off...
You should contact your ISP and tell them that this behavior of their DNS server is a violation of Internet standards. If they will not fix their DNS servers to comply with Internet standards, it's within your control to configure your router or computer to use different DNS servers that do comply with the standards. For example, I use Google DNS.
I've got:
$ ls -l /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 -rw-r--r-- 1 macports admin 2319400 5 May 03:01 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 $ file /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2: bzip2 compressed data, block size = 900k $ openssl dgst -sha256 /opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2 SHA256(/opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2)= 7f8e9a804b9c6d07164cf754207be838ece1219425d64e28cfa3e70d5c759aaf
Ok, that is the right checksum. So you do appear to have the right file. So the DNS problems don't seem to be contributing to this particular problem. So what is? We could try to run a version of the command MacPorts is trying to run to extract the file, and see if we get any additional errors that MacPorts didn't mention. I'd do this in a temporary directory that automatically cleans itself up after a few days, such as /tmp:
cd /tmp /usr/bin/bzip2 -dc '/opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2' | /usr/bin/tar -xf -
If this is successful, it should print no output, and a directory "gmp-6.0.0" should have been created. If it's not successful, maybe it prints a warning or an error. I am wondering if your system's bzip2 and/or tar utilities may be broken.
comment:6 Changed 10 years ago by brookemgilbert@…
Replying to ryandesign@…:
Ok, that is the right checksum. So you do appear to have the right file. So the DNS problems don't seem to be contributing to this particular problem. So what is? We could try to run a version of the command MacPorts is trying to run to extract the file, and see if we get any additional errors that MacPorts didn't mention. I'd do this in a temporary directory that automatically cleans itself up after a few days, such as /tmp:
cd /tmp /usr/bin/bzip2 -dc '/opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2' | /usr/bin/tar -xf -If this is successful, it should print no output, and a directory "gmp-6.0.0" should have been created. If it's not successful, maybe it prints a warning or an error. I am wondering if your system's bzip2 and/or tar utilities may be broken.
Here goes...
$ cd /tmp $ /usr/bin/bzip2 -dc '/opt/local/var/macports/distfiles/gmp/gmp-6.0.0a.tar.bz2' | /usr/bin/tar -xf - $ ls gmp-6.0.0/ AUTHORS configure.ac mp_clz_tab.c COPYING cxx mp_dv_tab.c COPYING.LESSERv3 demos mp_get_fns.c COPYINGv2 doc mp_minv_tab.c COPYINGv3 errno.c mp_set_fns.c ChangeLog extract-dbl.c mpf INSTALL gen-bases.c mpn INSTALL.autoconf gen-fac.c mpq Makefile.am gen-fib.c mpz Makefile.in gen-jacobitab.c nextprime.c NEWS gen-psqr.c primesieve.c README gen-trialdivtab.c printf acinclude.m4 gmp-h.in rand aclocal.m4 gmp-impl.h scanf assert.c gmpxx.h tal-debug.c bootstrap.c install-sh tal-notreent.c compat.c invalid.c tal-reent.c config.guess longlong.h tests config.in ltmain.sh tune config.sub memory.c version.c configfsf.guess mini-gmp ylwrap configfsf.sub missing configure mp_bpl.c
Surely there must be a way to get more info back about the error.. Shall I just fire up a debug build?
comment:7 follow-up: 8 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
So the manual extraction worked fine. And extracting gmp within MacPorts still fails? What about other ports -- do you see the same issue or can they be installed ok?
comment:8 Changed 10 years ago by brookemgilbert@…
Replying to ryandesign@…:
So the manual extraction worked fine. And extracting gmp within MacPorts still fails? What about other ports -- do you see the same issue or can they be installed ok?
Well actually I originally got the error for 'gettext', and just like this case, cleaning and re-trying the install didn't work; I could manually unzip the file, but MacPorts still failed to do so. So I tried a 'port selfupdate' and updated all the ports, and still had the problem (looks like I forgot to run 'port clean gettext' though; instead I tried running 'port update outdated' and 'port update gettext'). I think I started seeing the same failure with other ports at that time (e.g. when I ran 'port update outdated'?) so I figured [recalling some bad memories of FreeBSD 7 ports going wrong] I'd managed to mess up the whole MacPorts installation, somehow. (Again, from my command history it doesn't look like I ran 'port clean'). I tried reverting to the previous version of MacPorts to see if it made a difference (I think I did indeed pick up a version update when I ran 'port selfupdate') but found that it immediately auto-updates itself to the latest version anyway (at least when using the downloaded installer).
So... then I basically followed the directions here to uninstall and clean all my ports, and reinstalled MacPorts just to be sure... Then the first thing I did with my (presumably) clean install was 'port install gcc49' and that started failing with this 'gmp' error. Out of curiosity, I then tried 'port install gettext' and to my surprise, that now installed fine.
Edit: To answer your original question, I don't *know* of any other ports that are failing to install with my current "clean" installation; but I have only tried installing 'gcc49' and 'gettext' since wiping the previously installed ports.
comment:9 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
If you were experiencing the problem with multiple ports, after already having reinstalled MacPorts, I would suspect a problem with your tar
and/or bzip
utilities. However, that seems to be ruled out by the successful manual tests at the command line. You said gettext installed successfully, but gettext does not use a bz2-compressed distfile; it uses a gz-compressed distfile. Try another port that uses a bz2-compressed distfile, such as freetype.
comment:10 Changed 10 years ago by brookemgilbert@…
Ok, freetype just installed fine. To be clear, gmp is the only failure I've had since uninstalling all my ports; but I only have these ports installed so far:
$ port installed The following ports are currently installed: boost @1.55.0_2+no_single+no_static+python27 (active) bzip2 @1.0.6_0 (active) cctools @855_1+llvm34 (active) cctools-headers @855_0 (active) db46 @4.6.21_9 (active) db_select @0.1_2 (active) expat @2.1.0_0 (active) freetype @2.5.3_1 (active) gettext @0.19_0 (active) icu @51.2_1 (active) libedit @20121213-3.0_0 (active) libffi @3.0.13_0 (active) libiconv @1.14_0 (active) libpng @1.6.10_0 (active) llvm-3.4 @3.4_3 (active) llvm_select @1.0_0 (active) ncurses @5.9_2 (active) openssl @1.0.1h_0 (active) python27 @2.7.7_0 (active) python_select @0.3_3 (active) sqlite3 @3.8.4.3_0 (active) xz @5.0.5_0 (active) zlib @1.2.8_0 (active)
Also, when gettext was failing, I think I had an outdated ports tree so it was gettext 0.18 that was failing, not 0.19.
Changed 10 years ago by brookemgilbert@…
Attachment: | macports_boost__main.log added |
---|
main.log for boost failure during 'update outdated'
Changed 10 years ago by brookemgilbert@…
Attachment: | macports_boost__stdout.txt added |
---|
stdout leading to boost failure
comment:11 Changed 10 years ago by brookemgilbert@…
This is interesting.. out of curiosity I just tried to do 'port selfupdate' (which seems to have just got the current version again, but also updated the ports tree) and then 'port update outdated' and that gave me this same failure on updating boost. I have attached my stdout and main.log (called macports_boost_*). Obviously boost hadn't been a problem before...
comment:12 Changed 10 years ago by brookemgilbert@…
I had to reboot the PC for some kind of system update, and everything seems to be working again since then.. Bit disappointing as I was hoping to get to the bottom of this. I guess there could have been a locked file handle that got closed on reboot, or something else silly?
Anyway the error message was not very helpful. Perhaps the decompress succeeded but something trivial failed (e.g. file open) for which the error code wasn't checked?
If I encounter this again I'll let you know. Thanks for all your help.
comment:13 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → worksforme |
---|---|
Status: | new → closed |
I'm glad you got it fixed. Maybe your system was just in a weird state, which restarting alleviated.
main.log