Hi, Ralph, Thanks for helping to figure out where the problem is. You wrote:
> > This report is for tar-1.29, compiled and installed on Mac El Capitan. > > When the environment variable "LANG" is not set, tar cannot handle a > > compressed archive--the error is "broken pipe". For example: > > > > m3rgma0371carn - T tar tvzf archive.tgz > > gnutar: Child died with signal 11 > > gnutar: Error is not recoverable: exiting now > > m3rgma0371carn - T $ export LANG=" " > > m3rgma0371carn - T $ tar tvzf archive.tgz > > drwxr-xr-x gross/staff 0 2016-08-29 12:10 hsperfdata_gross/ > > drwx------ gross/staff 0 2016-08-13 [...] > > > > There is no problem if I gunzip the archive first, and then run tar. > > Setting LANG to a space doesn't tell us what it and other locale > environment variables were set to, if they were set, before then. Can > we have the output of these commands when tar fails. > locale > env | egrep '^(LANG|LC_)' | cat -et m3rgma0371carn - T $ unset LANG m3rgma0371carn - T $ gnutar -tvf archive.tgz gnutar: Child died with signal 11 gnutar: Error is not recoverable: exiting now m3rgma0371carn - T $ locale LANG= LC_COLLATE="C" LC_CTYPE="C" LC_MESSAGES="C" LC_MONETARY="C" LC_NUMERIC="C" LC_TIME="C" LC_ALL= m3rgma0371carn - T $ env | egrep '^(LANG|LC_)' | cat -et m3rgma0371carn - T $ > BTW, I assume setting LANG to space isn't particularly valid. If > you want to reset your locale to the old simple one, do `export > LC_ALL=C'. That was part of the point. LANG did not need to be set to a valid locale in order to get tar to work. But it apparently needed to be set to something. For whatever reason, my login was not setting LANG or LC_ALL, and that made gnutar unhappy. Thanks. I'm happy to provide more information if that helps track down the bug.--Rob -- Rob Gross (617) 552-3758 Department of Mathematics http://fmwww.bc.edu/gross/ Boston College gr...@bc.edu Chestnut Hill, MA 02467-3806