Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tar index doesn't work on large files #55

Closed
hisnameishb opened this issue Nov 4, 2015 · 17 comments
Closed

tar index doesn't work on large files #55

hisnameishb opened this issue Nov 4, 2015 · 17 comments
Assignees

Comments

@hisnameishb
Copy link

pixz 1.05:
8,7GB tar after indexing/packing it with pixz I do
pixz -l bigtar.tpxz
Can't list non-seekable input

With small files it works.

@wookietreiber
Copy link
Collaborator

That's weird, because during the configuration step of the build, the large file support should be figured out correctly. But maybe it is some other issue than large file support.

@hisnameishb Would you please let us know about your architecture and how configure behaved during compilation on your machine? The simplest way to do this is to either paste the content of your config.log file here or to upload it to some pastebin service and post the link. This should give us all the necessary information to figure out whether or not this issue has anything to do with large file support.

@hisnameishb I have some additional questions, because without more details it will be hard for us to reproduce this issue to finally be able to fix it:

  1. I would like to see the following output:
file bigtar.tpxz
  1. Which file system are you working with?

@vasi I don't yet have fully understood how the decode_index function works and how and why it may return false, would you please help out here? I believe we could figure out a bit more details about what is going wrong here if we'd use errno and strerr to see why some of the used system functions like fseeko and ftello are failing. Maybe this will shed some light on this issue.

@hisnameishb
Copy link
Author

file bigtar: POSIX tar archive (GNU)
architecture: see config.log
ext4 file system
config.log: I cannot attach it. github says: Attaching documents requires wirte permission to this repo.
I renamed it to png, but its text. Download it with wget, not with your browser, it gives an error because it is handled as image.
config log txt

@wookietreiber
Copy link
Collaborator

@hisnameishb If you sent this via email, GitHub apparently does not include the attachment. Would you please go to the GitHub issues page and post the contents of config.log?

@wookietreiber
Copy link
Collaborator

@hisnameishb In the meantime, if have written a small patch that may shed some light on the issue. Please apply this patch, recompile and try listing again:

# change to source directory
cd /path/to/pixz-1.0.5
# download patch from GitHub
wget https://github.com/wookietreiber/pixz/commit/7fb07efef7a62cb3ec45378cc5e8bc13c271d402.patch
# apply patch
patch -Np1 -i 7fb07efef7a62cb3ec45378cc5e8bc13c271d402.patch
# this should recompile the changes only, no need to run configure again
make
# try listing again
src/pixz -l /path/to/bigtar.tpxz

Possibly, there will be more output as to why seeking in this file does not work.

@hisnameishb
Copy link
Author

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by pixz configure 1.0.5, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure 

## --------- ##
## Platform. ##
## --------- ##

hostname = box
uname -m = i686
uname -r = 3.13.0-57-generic
uname -s = Linux
uname -v = #95-Ubuntu SMP Fri Jun 19 09:27:48 UTC 2015

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /home/myname/perl5/perlbrew/bin
PATH: /home/myname/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2393: checking for a BSD-compatible install
configure:2461: result: /usr/bin/install -c
configure:2472: checking whether build environment is sane
configure:2527: result: yes
configure:2678: checking for a thread-safe mkdir -p
configure:2717: result: /bin/mkdir -p
configure:2724: checking for gawk
configure:2740: found /usr/bin/gawk
configure:2751: result: gawk
configure:2762: checking whether make sets $(MAKE)
configure:2784: result: yes
configure:2813: checking whether make supports nested variables
configure:2830: result: yes
configure:2970: checking for style of include used by make
configure:2998: result: GNU
configure:3069: checking for gcc
configure:3085: found /usr/bin/gcc
configure:3096: result: gcc
configure:3325: checking for C compiler version
configure:3334: gcc --version >&5
gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:3345: $? = 0
configure:3334: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/5/lto-wrapper
Target: i686-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.2.1-22ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-i386/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-i386 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-i386 --with-arch-directory=i386 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-targets=all --enable-multiarch --disable-werror --with-arch-32=i686 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Thread model: posix
gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2) 
configure:3345: $? = 0
configure:3334: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:3345: $? = 1
configure:3334: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'
gcc: fatal error: no input files
compilation terminated.
configure:3345: $? = 1
configure:3365: checking whether the C compiler works
configure:3387: gcc    conftest.c  >&5
configure:3391: $? = 0
configure:3439: result: yes
configure:3442: checking for C compiler default output file name
configure:3444: result: a.out
configure:3450: checking for suffix of executables
configure:3457: gcc -o conftest    conftest.c  >&5
configure:3461: $? = 0
configure:3483: result: 
configure:3505: checking whether we are cross compiling
configure:3513: gcc -o conftest    conftest.c  >&5
configure:3517: $? = 0
configure:3524: ./conftest
configure:3528: $? = 0
configure:3543: result: no
configure:3548: checking for suffix of object files
configure:3570: gcc -c   conftest.c >&5
configure:3574: $? = 0
configure:3595: result: o
configure:3599: checking whether we are using the GNU C compiler
configure:3618: gcc -c   conftest.c >&5
configure:3618: $? = 0
configure:3627: result: yes
configure:3636: checking whether gcc accepts -g
configure:3656: gcc -c -g  conftest.c >&5
configure:3656: $? = 0
configure:3697: result: yes
configure:3714: checking for gcc option to accept ISO C89
configure:3777: gcc  -c -g -O2  conftest.c >&5
configure:3777: $? = 0
configure:3790: result: none needed
configure:3815: checking whether gcc understands -c and -o together
configure:3837: gcc -c conftest.c -o conftest2.o
configure:3840: $? = 0
configure:3837: gcc -c conftest.c -o conftest2.o
configure:3840: $? = 0
configure:3852: result: yes
configure:3871: checking dependency style of gcc
configure:3982: result: gcc3
configure:4001: checking for gcc option to accept ISO C99
configure:4150: gcc  -c -g -O2  conftest.c >&5
configure:4150: $? = 0
configure:4163: result: none needed
configure:4271: checking for gcc option to accept ISO Standard C
configure:4282: result: none needed
configure:4293: checking for src/pixz.1
configure:4306: result: yes
configure:4359: checking for ceil in -lm
configure:4384: gcc -o conftest -g -O2   conftest.c -lm   >&5
conftest.c:18:6: warning: conflicting types for built-in function 'ceil'
 char ceil ();
      ^
configure:4384: $? = 0
configure:4393: result: yes
configure:4408: checking build system type
configure:4422: result: i686-pc-linux-gnu
configure:4442: checking host system type
configure:4455: result: i686-pc-linux-gnu
configure:4587: checking if compiler needs -Werror to reject unknown flags
configure:4603: gcc -c -g -O2 -Werror -Wunknown-warning-option -Wsizeof-array-argument  conftest.c >&5
gcc: error: unrecognized command line option '-Wunknown-warning-option'
configure:4603: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| int foo(void);
| int
| main ()
| {
| foo()
|   ;
|   return 0;
| }
configure:4608: result: no
configure:4674: checking for the pthreads library -lpthreads
configure:4712: gcc -o conftest -g -O2     conftest.c -lpthreads -lm  >&5
/usr/bin/ld: cannot find -lpthreads
collect2: error: ld returned 1 exit status
configure:4712: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| #include <pthread.h>
|                         static void routine(void *a) { a = 0; }
|                         static void *start_routine(void *a) { return a; }
| int
| main ()
| {
| pthread_t th; pthread_attr_t attr;
|                         pthread_create(&th, 0, start_routine, 0);
|                         pthread_join(th, 0);
|                         pthread_attr_init(&attr);
|                         pthread_cleanup_push(routine, 0);
|                         pthread_cleanup_pop(0) /* ; */
|   ;
|   return 0;
| }
configure:4721: result: no
configure:4619: checking whether pthreads work without any flags
configure:4712: gcc -o conftest -g -O2     conftest.c  -lm  >&5
/tmp/cc6jiHfA.o: In function `main':
/media/big_disk/pixz-1.0.5/conftest.c:19: undefined reference to `pthread_create'
/media/big_disk/pixz-1.0.5/conftest.c:20: undefined reference to `pthread_join'
/media/big_disk/pixz-1.0.5/conftest.c:22: undefined reference to `__pthread_register_cancel'
/media/big_disk/pixz-1.0.5/conftest.c:23: undefined reference to `__pthread_unregister_cancel'
collect2: error: ld returned 1 exit status
configure:4712: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| #include <pthread.h>
|                         static void routine(void *a) { a = 0; }
|                         static void *start_routine(void *a) { return a; }
| int
| main ()
| {
| pthread_t th; pthread_attr_t attr;
|                         pthread_create(&th, 0, start_routine, 0);
|                         pthread_join(th, 0);
|                         pthread_attr_init(&attr);
|                         pthread_cleanup_push(routine, 0);
|                         pthread_cleanup_pop(0) /* ; */
|   ;
|   return 0;
| }
configure:4721: result: no
configure:4624: checking whether pthreads work with -Kthread
configure:4712: gcc -o conftest -g -O2 -Kthread    conftest.c  -lm  >&5
gcc: error: unrecognized command line option '-Kthread'
configure:4712: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| #include <pthread.h>
|                         static void routine(void *a) { a = 0; }
|                         static void *start_routine(void *a) { return a; }
| int
| main ()
| {
| pthread_t th; pthread_attr_t attr;
|                         pthread_create(&th, 0, start_routine, 0);
|                         pthread_join(th, 0);
|                         pthread_attr_init(&attr);
|                         pthread_cleanup_push(routine, 0);
|                         pthread_cleanup_pop(0) /* ; */
|   ;
|   return 0;
| }
configure:4721: result: no
configure:4624: checking whether pthreads work with -kthread
configure:4712: gcc -o conftest -g -O2 -kthread    conftest.c  -lm  >&5
gcc: error: unrecognized command line option '-kthread'
configure:4712: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| #include <pthread.h>
|                         static void routine(void *a) { a = 0; }
|                         static void *start_routine(void *a) { return a; }
| int
| main ()
| {
| pthread_t th; pthread_attr_t attr;
|                         pthread_create(&th, 0, start_routine, 0);
|                         pthread_join(th, 0);
|                         pthread_attr_init(&attr);
|                         pthread_cleanup_push(routine, 0);
|                         pthread_cleanup_pop(0) /* ; */
|   ;
|   return 0;
| }
configure:4721: result: no
configure:4674: checking for the pthreads library -llthread
configure:4712: gcc -o conftest -g -O2     conftest.c -llthread -lm  >&5
/usr/bin/ld: cannot find -llthread
collect2: error: ld returned 1 exit status
configure:4712: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| /* end confdefs.h.  */
| #include <pthread.h>
|                         static void routine(void *a) { a = 0; }
|                         static void *start_routine(void *a) { return a; }
| int
| main ()
| {
| pthread_t th; pthread_attr_t attr;
|                         pthread_create(&th, 0, start_routine, 0);
|                         pthread_join(th, 0);
|                         pthread_attr_init(&attr);
|                         pthread_cleanup_push(routine, 0);
|                         pthread_cleanup_pop(0) /* ; */
|   ;
|   return 0;
| }
configure:4721: result: no
configure:4624: checking whether pthreads work with -pthread
configure:4712: gcc -o conftest -g -O2 -pthread    conftest.c  -lm  >&5
configure:4712: $? = 0
configure:4721: result: yes
configure:4740: checking for joinable pthread attribute
configure:4755: gcc -o conftest -g -O2 -pthread   conftest.c  -lm  >&5
configure:4755: $? = 0
configure:4761: result: PTHREAD_CREATE_JOINABLE
configure:4771: checking if more special flags are required for pthreads
configure:4786: result: no
configure:4792: checking for PTHREAD_PRIO_INHERIT
configure:4809: gcc -o conftest -g -O2 -pthread   conftest.c  -lm  >&5
configure:4809: $? = 0
configure:4818: result: yes
configure:4971: checking for pkg-config
configure:4989: found /usr/bin/pkg-config
configure:5001: result: /usr/bin/pkg-config
configure:5026: checking pkg-config is at least version 0.9.0
configure:5029: result: yes
configure:5039: checking for LIBARCHIVE
configure:5046: $PKG_CONFIG --exists --print-errors "libarchive"
configure:5049: $? = 0
configure:5063: $PKG_CONFIG --exists --print-errors "libarchive"
configure:5066: $? = 0
configure:5124: result: yes
configure:5130: checking for LZMA
configure:5137: $PKG_CONFIG --exists --print-errors "liblzma"
configure:5140: $? = 0
configure:5154: $PKG_CONFIG --exists --print-errors "liblzma"
configure:5157: $? = 0
configure:5215: result: yes
configure:5226: checking how to run the C preprocessor
configure:5257: gcc -E  conftest.c
configure:5257: $? = 0
configure:5271: gcc -E  conftest.c
conftest.c:14:28: fatal error: ac_nonexistent.h: No such file or directory
compilation terminated.
configure:5271: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:5296: result: gcc -E
configure:5316: gcc -E  conftest.c
configure:5316: $? = 0
configure:5330: gcc -E  conftest.c
conftest.c:14:28: fatal error: ac_nonexistent.h: No such file or directory
compilation terminated.
configure:5330: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:5359: checking for grep that handles long lines and -e
configure:5417: result: /bin/grep
configure:5422: checking for egrep
configure:5484: result: /bin/grep -E
configure:5489: checking for ANSI C header files
configure:5509: gcc -c -g -O2  conftest.c >&5
configure:5509: $? = 0
configure:5582: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:5582: $? = 0
configure:5582: ./conftest
configure:5582: $? = 0
configure:5593: result: yes
configure:5606: checking for sys/types.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for sys/stat.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for stdlib.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for string.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for memory.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for strings.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for inttypes.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for stdint.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5606: checking for unistd.h
configure:5606: gcc -c -g -O2  conftest.c >&5
configure:5606: $? = 0
configure:5606: result: yes
configure:5621: checking fcntl.h usability
configure:5621: gcc -c -g -O2  conftest.c >&5
configure:5621: $? = 0
configure:5621: result: yes
configure:5621: checking fcntl.h presence
configure:5621: gcc -E  conftest.c
configure:5621: $? = 0
configure:5621: result: yes
configure:5621: checking for fcntl.h
configure:5621: result: yes
configure:5621: checking for stdint.h
configure:5621: result: yes
configure:5621: checking for stdlib.h
configure:5621: result: yes
configure:5621: checking for string.h
configure:5621: result: yes
configure:5621: checking for unistd.h
configure:5621: result: yes
configure:5634: checking for off_t
configure:5634: gcc -c -g -O2  conftest.c >&5
configure:5634: $? = 0
configure:5634: gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:65:20: error: expected expression before ')' token
 if (sizeof ((off_t)))
                    ^
configure:5634: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main ()
| {
| if (sizeof ((off_t)))
|       return 0;
|   ;
|   return 0;
| }
configure:5634: result: yes
configure:5645: checking for size_t
configure:5645: gcc -c -g -O2  conftest.c >&5
configure:5645: $? = 0
configure:5645: gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:65:21: error: expected expression before ')' token
 if (sizeof ((size_t)))
                     ^
configure:5645: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main ()
| {
| if (sizeof ((size_t)))
|       return 0;
|   ;
|   return 0;
| }
configure:5645: result: yes
configure:5656: checking for ssize_t
configure:5656: gcc -c -g -O2  conftest.c >&5
configure:5656: $? = 0
configure:5656: gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:65:22: error: expected expression before ')' token
 if (sizeof ((ssize_t)))
                      ^
configure:5656: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| int
| main ()
| {
| if (sizeof ((ssize_t)))
|       return 0;
|   ;
|   return 0;
| }
configure:5656: result: yes
configure:5667: checking for uint16_t
configure:5667: gcc -c -g -O2  conftest.c >&5
configure:5667: $? = 0
configure:5667: result: yes
configure:5679: checking for uint32_t
configure:5679: gcc -c -g -O2  conftest.c >&5
configure:5679: $? = 0
configure:5679: result: yes
configure:5693: checking for uint64_t
configure:5693: gcc -c -g -O2  conftest.c >&5
configure:5693: $? = 0
configure:5693: result: yes
configure:5707: checking for uint8_t
configure:5707: gcc -c -g -O2  conftest.c >&5
configure:5707: $? = 0
configure:5707: result: yes
configure:5730: checking for special C compiler options needed for large files
configure:5775: result: no
configure:5781: checking for _FILE_OFFSET_BITS value needed for large files
configure:5806: gcc -c -g -O2  conftest.c >&5
conftest.c:34:33: warning: left shift count >= width of type [-Wshift-count-overflow]
 #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
                                 ^
conftest.c:35:23: note: in expansion of macro 'LARGE_OFF_T'
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       ^
conftest.c:34:57: warning: left shift count >= width of type [-Wshift-count-overflow]
 #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
                                                         ^
conftest.c:35:23: note: in expansion of macro 'LARGE_OFF_T'
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                       ^
conftest.c:34:33: warning: left shift count >= width of type [-Wshift-count-overflow]
 #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
                                 ^
conftest.c:36:13: note: in expansion of macro 'LARGE_OFF_T'
          && LARGE_OFF_T % 2147483647 == 1)
             ^
conftest.c:34:57: warning: left shift count >= width of type [-Wshift-count-overflow]
 #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
                                                         ^
conftest.c:36:13: note: in expansion of macro 'LARGE_OFF_T'
          && LARGE_OFF_T % 2147483647 == 1)
             ^
conftest.c:35:7: error: variably modified 'off_t_is_large' at file scope
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
       ^
configure:5806: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| /* end confdefs.h.  */
| #include <sys/types.h>
|  /* Check that off_t can represent 2**63 - 1 correctly.
|     We can't simply define LARGE_OFF_T to be 9223372036854775807,
|     since some C++ compilers masquerading as C compilers
|     incorrectly reject 9223372036854775807.  */
| #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
|   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
|              && LARGE_OFF_T % 2147483647 == 1)
|             ? 1 : -1];
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:5830: gcc -c -g -O2  conftest.c >&5
configure:5830: $? = 0
configure:5838: result: 64
configure:5927: checking for stdlib.h
configure:5927: result: yes
configure:5937: checking for GNU libc compatible malloc
configure:5961: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:5961: $? = 0
configure:5961: ./conftest
configure:5961: $? = 0
configure:5971: result: yes
configure:5994: checking for stdlib.h
configure:5994: result: yes
configure:6004: checking for GNU libc compatible realloc
configure:6028: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:6028: $? = 0
configure:6028: ./conftest
configure:6028: $? = 0
configure:6038: result: yes
configure:6059: checking for working strtod
configure:6100: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:6100: $? = 0
configure:6100: ./conftest
configure:6100: $? = 0
configure:6110: result: yes
configure:6175: checking for memchr
configure:6175: gcc -o conftest -g -O2   conftest.c -lm  >&5
conftest.c:57:6: warning: conflicting types for built-in function 'memchr'
 char memchr ();
      ^
configure:6175: $? = 0
configure:6175: result: yes
configure:6175: checking for memmove
configure:6175: gcc -o conftest -g -O2   conftest.c -lm  >&5
conftest.c:58:6: warning: conflicting types for built-in function 'memmove'
 char memmove ();
      ^
configure:6175: $? = 0
configure:6175: result: yes
configure:6175: checking for memset
configure:6175: gcc -o conftest -g -O2   conftest.c -lm  >&5
conftest.c:59:6: warning: conflicting types for built-in function 'memset'
 char memset ();
      ^
configure:6175: $? = 0
configure:6175: result: yes
configure:6175: checking for strerror
configure:6175: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:6175: $? = 0
configure:6175: result: yes
configure:6175: checking for strtol
configure:6175: gcc -o conftest -g -O2   conftest.c -lm  >&5
configure:6175: $? = 0
configure:6175: result: yes
configure:6184: checking whether htole64 is declared
configure:6184: gcc -c -g -O2  conftest.c >&5
conftest.c:39:24: fatal error: sys/endian.h: No such file or directory
compilation terminated.
configure:6184: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "pixz"
| #define PACKAGE_TARNAME "pixz"
| #define PACKAGE_VERSION "1.0.5"
| #define PACKAGE_STRING "pixz 1.0.5"
| #define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
| #define PACKAGE_URL ""
| #define PACKAGE "pixz"
| #define VERSION "1.0.5"
| #define HAVE_LIBM 1
| #define HAVE_PTHREAD_PRIO_INHERIT 1
| #define HAVE_PTHREAD 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| #define _FILE_OFFSET_BITS 64
| #define HAVE_STDLIB_H 1
| #define HAVE_MALLOC 1
| #define HAVE_STDLIB_H 1
| #define HAVE_REALLOC 1
| #define HAVE_MEMCHR 1
| #define HAVE_MEMMOVE 1
| #define HAVE_MEMSET 1
| #define HAVE_STRERROR 1
| #define HAVE_STRTOL 1
| /* end confdefs.h.  */
| #include <sys/endian.h>
| 
| int
| main ()
| {
| #ifndef htole64
| #ifdef __cplusplus
|   (void) htole64;
| #else
|   (void) htole64;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:6184: result: no
configure:6199: checking whether htole64 is declared
configure:6199: result: no
configure:6210: checking whether le64toh is declared
configure:6210: gcc -c -g -O2  conftest.c >&5
configure:6210: $? = 0
configure:6210: result: yes
configure:6224: checking whether le64toh is declared
configure:6224: result: yes
configure:6377: checking that generated files are newer than configure
configure:6383: result: done
configure:6406: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by pixz config.status 1.0.5, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status 

on box

config.status:897: creating Makefile
config.status:897: creating src/Makefile
config.status:897: creating test/Makefile
config.status:897: creating config.h
config.status:1126: executing depfiles commands

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=i686-pc-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_c_uint16_t=yes
ac_cv_c_uint32_t=yes
ac_cv_c_uint64_t=yes
ac_cv_c_uint8_t=yes
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBARCHIVE_CFLAGS_set=
ac_cv_env_LIBARCHIVE_CFLAGS_value=
ac_cv_env_LIBARCHIVE_LIBS_set=
ac_cv_env_LIBARCHIVE_LIBS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LZMA_CFLAGS_set=
ac_cv_env_LZMA_CFLAGS_value=
ac_cv_env_LZMA_LIBS_set=
ac_cv_env_LZMA_LIBS_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=
ac_cv_env_PKG_CONFIG_LIBDIR_value=
ac_cv_env_PKG_CONFIG_PATH_set=
ac_cv_env_PKG_CONFIG_PATH_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_file_src_pixz_1=yes
ac_cv_func_malloc_0_nonnull=yes
ac_cv_func_memchr=yes
ac_cv_func_memmove=yes
ac_cv_func_memset=yes
ac_cv_func_realloc_0_nonnull=yes
ac_cv_func_strerror=yes
ac_cv_func_strtod=yes
ac_cv_func_strtol=yes
ac_cv_have_decl_htole64=no
ac_cv_have_decl_le64toh=yes
ac_cv_header_fcntl_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_memory_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_unistd_h=yes
ac_cv_host=i686-pc-linux-gnu
ac_cv_lib_m_ceil=yes
ac_cv_objext=o
ac_cv_path_EGREP='/bin/grep -E'
ac_cv_path_GREP=/bin/grep
ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CPP='gcc -E'
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_cc_c89=
ac_cv_prog_cc_c99=
ac_cv_prog_cc_g=yes
ac_cv_prog_cc_stdc=
ac_cv_prog_make_make_set=yes
ac_cv_sys_file_offset_bits=64
ac_cv_sys_largefile_CC=no
ac_cv_type_off_t=yes
ac_cv_type_size_t=yes
ac_cv_type_ssize_t=yes
am_cv_CC_dependencies_compiler_type=gcc3
am_cv_make_support_nested_variables=yes
am_cv_prog_cc_c_o=yes
ax_cv_PTHREAD_PRIO_INHERIT=yes
pkg_cv_LIBARCHIVE_CFLAGS=
pkg_cv_LIBARCHIVE_LIBS='-larchive '
pkg_cv_LZMA_CFLAGS=
pkg_cv_LZMA_LIBS='-llzma '

## ----------------- ##
## Output variables. ##
## ----------------- ##

A2X=''
ACLOCAL='${SHELL} /media/big_disk/pixz-1.0.5/missing aclocal-1.15'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
AM_DEFAULT_VERBOSITY='1'
AM_V='$(V)'
AUTOCONF='${SHELL} /media/big_disk/pixz-1.0.5/missing autoconf'
AUTOHEADER='${SHELL} /media/big_disk/pixz-1.0.5/missing autoheader'
AUTOMAKE='${SHELL} /media/big_disk/pixz-1.0.5/missing automake-1.15'
AWK='gawk'
CC='gcc'
CCDEPMODE='depmode=gcc3'
CFLAGS='-g -O2'
CPP='gcc -E'
CPPFLAGS=''
CYGPATH_W='echo'
DEFS='-DHAVE_CONFIG_H'
DEPDIR='.deps'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/bin/grep -E'
EXEEXT=''
GREP='/bin/grep'
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LDFLAGS=''
LIBARCHIVE_CFLAGS=''
LIBARCHIVE_LIBS='-larchive '
LIBOBJS=''
LIBS='-lm '
LTLIBOBJS=''
LZMA_CFLAGS=''
LZMA_LIBS='-llzma '
MAKEINFO='${SHELL} /media/big_disk/pixz-1.0.5/missing makeinfo'
MKDIR_P='/bin/mkdir -p'
OBJEXT='o'
PACKAGE='pixz'
PACKAGE_BUGREPORT='https://github.com/vasi/pixz/issues'
PACKAGE_NAME='pixz'
PACKAGE_STRING='pixz 1.0.5'
PACKAGE_TARNAME='pixz'
PACKAGE_URL=''
PACKAGE_VERSION='1.0.5'
PATH_SEPARATOR=':'
PKG_CONFIG='/usr/bin/pkg-config'
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
POW_LIB=''
PTHREAD_CC='gcc'
PTHREAD_CFLAGS='-pthread'
PTHREAD_LIBS=''
SET_MAKE=''
SHELL='/bin/bash'
STRIP=''
VERSION='1.0.5'
ac_ct_CC='gcc'
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE='#'
am__fastdepCC_FALSE='#'
am__fastdepCC_TRUE=''
am__include='include'
am__isrc=''
am__leading_dot='.'
am__nodep='_no'
am__quote=''
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
ax_pthread_config=''
bindir='${exec_prefix}/bin'
build='i686-pc-linux-gnu'
build_alias=''
build_cpu='i686'
build_os='linux-gnu'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='${prefix}'
host='i686-pc-linux-gnu'
host_alias=''
host_cpu='i686'
host_os='linux-gnu'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /media/big_disk/pixz-1.0.5/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='$(MKDIR_P)'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "pixz"
#define PACKAGE_TARNAME "pixz"
#define PACKAGE_VERSION "1.0.5"
#define PACKAGE_STRING "pixz 1.0.5"
#define PACKAGE_BUGREPORT "https://github.com/vasi/pixz/issues"
#define PACKAGE_URL ""
#define PACKAGE "pixz"
#define VERSION "1.0.5"
#define HAVE_LIBM 1
#define HAVE_PTHREAD_PRIO_INHERIT 1
#define HAVE_PTHREAD 1
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_UNISTD_H 1
#define HAVE_FCNTL_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_UNISTD_H 1
#define _FILE_OFFSET_BITS 64
#define HAVE_STDLIB_H 1
#define HAVE_MALLOC 1
#define HAVE_STDLIB_H 1
#define HAVE_REALLOC 1
#define HAVE_MEMCHR 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMSET 1
#define HAVE_STRERROR 1
#define HAVE_STRTOL 1
#define HAVE_DECL_HTOLE64 0
#define HAVE_DECL_HTOLE64 0
#define HAVE_DECL_LE64TOH 1
#define HAVE_DECL_LE64TOH 1

configure: exit 0

@hisnameishb
Copy link
Author

I patched it right now and create the tpxz again, takes some time...

@wookietreiber
Copy link
Collaborator

@hisnameishb You did not need to re-create the tpxz file again, the patch only concerns listing.

@hisnameishb
Copy link
Author

Yes, I know but I deleted the tpxz, so I had to recreate it.

I unpacked the pixz1.05-source into an new folder
patched the source
configured it
make-ed it
used the new pixz from this build to build the tpxz

and then:
pixz -l bigtar.tpxz: Can't list non-seekable input
no additional infos from the patched version.

@vasi
Copy link
Owner

vasi commented Nov 4, 2015

I approve of adding better error reporting. 👍

Otherwise, I'm not sure what the problem could be!

@wookietreiber
Copy link
Collaborator

@hisnameishb Thanks for all the reports.

@vasi With the patch I already excluded the possibility that it is fseeko that is failing.

@vasi
Copy link
Owner

vasi commented Nov 4, 2015

Yeah, and it looks like his build does has _FILE_OFFSET_BITS=64 . But then it's weird that listing is only failing for @hisnameishb for large files! Maybe there's an improperly sized variable somewhere, but then it should be failing for everyone....

@hisnameishb: Could you try listing several different pixz-compressed tarballs? Maybe include at least one that's smaller than 1 GiB, and at least two that are bigger than 2 GiB, so we can make sure that file size is not the problem.

@hisnameishb
Copy link
Author

Ok, I test it with different sizes.

@hisnameishb
Copy link
Author

tar ~100MB -> tpxz ????MB : listing works
tar 2039MB -> tpxz 1569MB : listing works
tar 4350MB -> tpxz 4324MB : Can't list non-seekable input
tar 4445MB -> tpxz 700kB : listing works
Seems a file size problem. Bigger than 2^32-1 -> bang!

@cicku
Copy link
Collaborator

cicku commented Nov 5, 2015

Seems something wrong with large file support here.

@mrjones69
Copy link

I'm the culprit that originally asked for big file support and still had
my test environment from verifying that they worked.
I also see the "Can't list non-seekable input" error when trying to use
the -l option on my ~7GB compressed test file.

The problem is in common.c in the decode_index() function when calling
ftello().
That's returning a -1 for 'pos' which then skips the loop and returns
false and triggers the error.
If you read the man page for fseeko() and ftello(), offsets are of type
pos_t which is only 32 bits by default.
It says if you set _FILE_OFFSET_BITS = 64 before including any other
headers, then it will increase to 64 bit size.

Back up in config.h, we do have _FILE_OFFSET_BITS defined as 64, but...
that is not included in common.c, only in pixz.c.

I just included config.h at the top of common.c and rebuilt and now the
listing works fine with the large file.

On 11/4/2015 7:54 PM, Christopher Meng wrote:

Seems something wrong with large file support here


Reply to this email directly or view it on GitHub
#55 (comment).

@wookietreiber
Copy link
Collaborator

Thanks for all the reports.

I will include this fix later today and release a new version.

@wookietreiber
Copy link
Collaborator

I opted to include config.h in pixz.h to make the defines available globally. Released as v1.0.6.

@hisnameishb Would you please verify that the listing works now on your machine as well? Testing this in travis would be kinda awkward, maybe not even possible at all, because I doubt they'll let you create more than 4GB per test run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants