#31772 closed defect (invalid)
libiconv @1.14_0 install error - /usr/bin/tar: +CONTENTS: Not found in archive
Reported by: | tjfulle@… | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.3 |
Keywords: | Cc: | ||
Port: | libiconv |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Updated MacPorts today by
sudo port selfupdate sudo port upgrade outdated
Upgrading outdated ports failed when installing libiconv @1.14_0 with the following error:
---> Installing libiconv @1.14_0 Error: Target org.macports.install returned: /usr/bin/tar: +CONTENTS: Not found in archive /usr/bin/tar: Error exit delayed from previous errors Log for libiconv is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_libiconv/libiconv/main.log Error: Unable to upgrade port: 1 To report a bug, see <http://guide.macports.org/#project.tickets>
I have tried the following to fix the problem
sudo rm /opt/local/var/macports/software/libiconv/libiconv-1.14_0.darwin_10.x86_64.tbz2 sudo port clean libiconv sudo port install libiconv
and the problem persists. I am unable to update or install other ports because of this problem. Is there a way to bypass installing libiconv?
Relevant sections of the log file follow, the entire log file is attached.
System:
- Mac Pro
- 2 x 2.4 GHz Quad-Core Intel Xeon
- 6 GB 1066 MHz DDR3
- Mac OSX 10.6.8
- gcc version 4.2.1 (Apple Inc. build 5664)
Log File:
:msg:main ---> Computing dependencies for libiconv:info:main . :msg:main :msg:archivefetch ---> Fetching archive for libiconv :info:archivefetch ---> libiconv-1.14_0.darwin_10.x86_64.tbz2 doesn't seem to exist in /opt/local/var/macports/software/libiconv :msg:archivefetch ---> Attempting to fetch libiconv-1.14_0.darwin_10.x86_64.tbz2 from http://packages.macports.org/libiconv :msg:archivefetch ---> Attempting to fetch libiconv-1.14_0.darwin_10.x86_64.tbz2.rmd160 from http://packages.macports.org/libiconv :notice:install ---> Installing libiconv @1.14_0 :error:install Target org.macports.install returned: /usr/bin/tar: +CONTENTS: Not found in archive /usr/bin/tar: Error exit delayed from previous errors :debug:install Backtrace: /usr/bin/tar: +CONTENTS: Not found in archive /usr/bin/tar: Error exit delayed from previous errors while executing "exec [findBinary tar ${portutil::autoconf::tar_path}] -xOj${qflag}f $location +CONTENTS" (procedure "extract_contents" line 6) invoked from within "extract_contents $location $portarchivetype" (procedure "portinstall::install_main" line 19) invoked from within "$procedure $targetname" :info:install Warning: the following items did not execute (for libiconv): org.macports.activate org.macports.install :notice:install Log for libiconv is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_libiconv/libiconv/main.log
Attachments (1)
Change History (12)
Changed 13 years ago by tjfulle@…
comment:1 follow-up: 3 Changed 13 years ago by mf2k (Frank Schima)
Cc: | tjfulle@… removed |
---|---|
Keywords: | libiconv install error removed |
Owner: | changed from macports-tickets@… to ryandesign@… |
Priority: | High → Normal |
comment:2 follow-up: 4 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
I've just downloaded the file http://packages.macports.org/libiconv/libiconv-1.14_0.darwin_10.x86_64.tbz2 and decompressed it, and it does contain a +CONTENTS file as it should, so I don't think the problem is with the file. Is there perhaps something the matter with your /usr/bin/tar or /usr/bin/bzip2 commands? Do they otherwise function normally?
comment:3 Changed 13 years ago by tjfulle@…
Replying to macsforever2000@…:
Are you really on Macports 2.0.1? selfupdate should have updated you.
My mistake, I am indeed at 2.03
comment:4 follow-up: 6 Changed 13 years ago by tjfulle@…
Replying to ryandesign@…:
I've just downloaded the file http://packages.macports.org/libiconv/libiconv-1.14_0.darwin_10.x86_64.tbz2 and decompressed it, and it does contain a +CONTENTS file as it should, so I don't think the problem is with the file. Is there perhaps something the matter with your /usr/bin/tar or /usr/bin/bzip2 commands? Do they otherwise function normally?
I also downloaded http://packages.macports.org/libiconv/libiconv-1.14_0.darwin_10.x86_64.tbz2 and untarred the archive:
% tar -xvf libiconv-1.14_0.darwin_10.x86_64.tbz2 % ls +COMMENT +CONTENTS +DESC +PORTFILE +STATE opt/
Clearly, the archive contains the +COMMENT file.
Suspecting something else might be wrong with the archive, I copied the @13.1_0 archive (previously installed) to the @14.0
% sudo cp libiconv-1.13.1_0.darwin_10.x86_64.tbz2 libiconv-1.14_0.darwin_10.x86_64.tbz2 % sudo port install libiconv
with the same results
Error: Target org.macports.install returned: /usr/bin/tar: +CONTENTS: Not found in archive /usr/bin/tar: Error exit delayed from previous errors Log for libiconv is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_libiconv/libiconv/main.log Error: Status 1 encountered during processing. To report a bug, see <http://guide.macports.org/#project.tickets>
I then suspected a permissions issue because /opt/local/var/macports/software/libiconv had the following ownership: macports:wheel. Almost every other directory in /opt/local/var/macports is owned by me. I changed the ownership
% sudo chown -R tjfulle:admin /opt/local/var/macports/software/libiconv % sudo port install libiconv
and the install failed with the same message. I'm at a bit of a loss...
comment:5 Changed 13 years ago by mf2k (Frank Schima)
Version: | 2.0.1 → 2.0.3 |
---|
comment:6 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to tjfulle@…:
Suspecting something else might be wrong with the archive, I copied the @13.1_0 archive (previously installed) to the @14.0
% sudo cp libiconv-1.13.1_0.darwin_10.x86_64.tbz2 libiconv-1.14_0.darwin_10.x86_64.tbz2 % sudo port install libiconv
with the same results
I looked up previous tickets about "+CONTENTS: Not found in archive" and found this:
So, try deleting the archive in /opt/local/var/macports/software/libiconv and letting MacPorts download it again.
comment:7 Changed 13 years ago by tjfulle@…
Removed /opt/local/var/macports/software/libiconv, cleaned, and tried reinstalling with the same +CONTENTS: Not found in archive error.
Is there a way to manually install libiconv so that I can get past this error? My install of macports is totally crippled until I can get it past this.
comment:8 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|
No, a downloaded archive can't be installed manually; MacPorts must install it so all the files go in the right places, and so that MacPorts updates its registry to record the fact that all the files have gone in the right places.
I've just tested on my system, and it works fine. Please verify that the tbz2 file that got downloaded on your system has the same size and sha256 hash as on my system:
$ cd /opt/local/var/macports/software/libiconv $ ls -l libiconv-1.14_0.darwin_10.x86_64.tbz2 -rw-r--r-- 1 macports wheel 1521741 Nov 3 06:47 libiconv-1.14_0.darwin_10.x86_64.tbz2 $ openssl dgst -sha256 libiconv-1.14_0.darwin_10.x86_64.tbz2 SHA256(libiconv-1.14_0.darwin_10.x86_64.tbz2)= d629f4c663d81ff92faca3dad6c2dcecb207ddf33f01f7d4d4f061e288c327cc $
Also please show me the same information for your bzip2, tar, bsdtar and gnutar commands, to make sure they're sane. Here's what I have on my 10.6.8 system:
$ ls -l {/opt/local,/usr}/bin/{bzip2,{,bsd,gnu}tar} ls: /opt/local/bin/bsdtar: No such file or directory ls: /opt/local/bin/tar: No such file or directory -rwxr-xr-x 1 root wheel 90132 Sep 27 2010 /opt/local/bin/bzip2 -rwxr-xr-x 1 root wheel 905992 Mar 15 2011 /opt/local/bin/gnutar -rwxr-xr-x 1 root wheel 191920 Jun 24 2010 /usr/bin/bsdtar -rwxr-xr-x 3 root wheel 121968 Dec 15 2010 /usr/bin/bzip2 -rwxr-xr-x 1 root wheel 991552 Jul 14 2009 /usr/bin/gnutar lrwxr-xr-x 1 root wheel 6 Nov 8 2009 /usr/bin/tar -> bsdtar $ openssl dgst -sha256 {/opt/local,/usr}/bin/{bzip2,{,bsd,gnu}tar} SHA256(/opt/local/bin/bzip2)= 61dc3c6d36208c47a7c8ac19d66a6085c1e767a99d8ea267be417298781245d2 /opt/local/bin/tar: No such file or directory /opt/local/bin/bsdtar: No such file or directory SHA256(/opt/local/bin/gnutar)= 27933c35ecc502f5ddc832d871a049d66d3c0b17bb4bff703c748cc16156eafe SHA256(/usr/bin/bzip2)= 96d00a42f02838bac12d31822417ce35bcd1ab94d615cc9b6632fd76993a3c56 SHA256(/usr/bin/tar)= df10bbc93f9d04f77048e3d3ab6ae3d2085a537a5613c7981db64494a3c9ec76 SHA256(/usr/bin/bsdtar)= df10bbc93f9d04f77048e3d3ab6ae3d2085a537a5613c7981db64494a3c9ec76 SHA256(/usr/bin/gnutar)= b02067331cb0451a8a572907eb49489354fcc13e3563d832005145148fedcb23 $
comment:9 Changed 13 years ago by tjfulle@…
ryandesign,
your last post led me to the solution to the problem. Upon executing
% ls -l {/opt/local,/usr}/bin/{bzip2,{,bsd,gnu}tar} ls: /opt/local/bin/bsdtar: No such file or directory ls: /opt/local/bin/gnutar: No such file or directory ls: /opt/local/bin/tar: No such file or directory -rwxr-xr-x 1 tjfulle admin 42040 Apr 21 2011 /opt/local/bin/bzip2* -rwxr-xr-x 1 root wheel 191920 Jun 24 2010 /usr/bin/bsdtar* -rwxr-xr-x 3 root wheel 121968 Apr 22 2011 /usr/bin/bzip2* -rwxr-xr-x 1 root wheel 987408 Apr 7 2010 /usr/bin/gnutar* lrwxr-xr-x 1 root wheel 6 Dec 9 2010 /usr/bin/tar -> gnutar
I noticed that /usr/bin/tar -> /usr/bin/gnutar, and not /usr/bin/bsdtar as is standard (other software I work with requires /usr/bin/tar be gnutar). I restored the symbolic link /usr/bin/tar -> /usr/bin/bsdtar and libinconv installs just fine. It is interesting that this problem had never surfaced in the past, since swapping /usr/bin/tar from bsdtar to gnutar is one of the first things that I did with this new computer.
Thanks to all for the help. Unless someone wants to track down why gnutar chokes on installing libiconv, I would consider this issue resolved.
comment:10 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → invalid |
---|---|
Status: | new → closed |
Glad you figured it out.
Yes, replacing /usr/bin/tar with gnutar is not a good idea on OS X. I would encourage you to keep /usr/bin/tar as a symlink to bsdtar as Apple intended. Our recommended solution for getting gnutar into your PATH as "tar" is to install the gnutar port and add /opt/local/libexec/gnubin to your PATH. Note that some other gnu ports also install unprefixed binaries into /opt/local/libexec/gnubin so you'll get those as well.
comment:11 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
FYI, MacPorts 2.1.0 will be compatible with gnutar as well as bsdtar; see #34080.
Are you really on Macports 2.0.1? selfupdate should have updated you.