Open andrewkpearce opened 7 years ago
I also run into this. Running ./generate_build_files.sh
removes most of the errors but I can't get past untar-lzma ... failed
.
I'm running:
git clone git@github.com:jmacd/xdelta && cd xdelta/xdelta3 && sed -i 's/1.15/1.14/g' configure.ac && ./generate_build_files.sh && ./configure && ./run_release.sh
And I get:
``` HEAD is now at 7508fd2 Merge pull request #236 from RobertCochran/generate-build-files libtoolize: putting auxiliary files in `.'. libtoolize: copying file `./ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: copying file `m4/libtool.m4' libtoolize: copying file `m4/ltoptions.m4' libtoolize: copying file `m4/ltsugar.m4' libtoolize: copying file `m4/ltversion.m4' libtoolize: copying file `m4/lt~obsolete.m4' configure.ac:5: installing './compile' configure.ac:5: installing './config.guess' configure.ac:5: installing './config.sub' configure.ac:6: installing './install-sh' configure.ac:6: installing './missing' Makefile.am: installing './depcomp' checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking how to print strings... printf checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking for gawk... gawk checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking whether make supports nested variables... yes checking whether UID '1000' is supported by ustar format... yes checking whether GID '1000' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking dependency style of gcc... gcc3 checking if pointers to integers require aligned access... no checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking whether gcc understands -c and -o together... (cached) yes checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... yes checking if g++ static flag -static works... yes checking if g++ supports -c -o file.o... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking dependency style of g++... gcc3 checking size of size_t... 8 checking size of unsigned int... 4 checking size of unsigned long... 8 checking size of unsigned long long... 8 checking lzma.h usability... yes checking lzma.h presence... yes checking for lzma.h... yes checking for lzma_easy_buffer_encode in -llzma... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing libtool commands config.status: executing depfiles commands untar-lzma ... failed! ```
This worked:
git clone git@github.com:jmacd/xdelta && cd xdelta && wget http://tukaani.org/xz/xz-5.2.1.tar.gz && cd xdelta3 && sed -i 's/1.15/1.14/g' configure.ac && ./generate_build_files.sh && ./configure && ./run_release.sh
Build is running now but with lots of failures for every platform.
After running a build, it looks like everything but the xz stuff fails to build.
State of the build
directory after attempting a build with the above commands:
``` . ├── i686-w64-mingw32-mconsole │ ├── usize32 │ └── usize64 ├── lib-i686-w64-mingw32-mconsole │ ├── bin │ ├── build-lzma.stderr │ ├── build-lzma.stdout │ ├── config.h │ ├── config.log │ ├── config.status │ ├── configure-lzma.stderr │ ├── configure-lzma.stdout │ ├── debug │ ├── Doxyfile │ ├── include │ ├── install-lzma.stderr │ ├── install-lzma.stdout │ ├── lib │ ├── libtool │ ├── Makefile │ ├── po │ ├── share │ ├── src │ ├── stamp-h1 │ └── tests ├── lib-x86_64-pc-linux-gnu-m32 │ ├── config.log │ ├── configure-lzma.stderr │ └── configure-lzma.stdout ├── lib-x86_64-pc-linux-gnu-m64 │ ├── bin │ ├── build-lzma.stderr │ ├── build-lzma.stdout │ ├── config.h │ ├── config.log │ ├── config.status │ ├── configure-lzma.stderr │ ├── configure-lzma.stdout │ ├── debug │ ├── Doxyfile │ ├── include │ ├── install-lzma.stderr │ ├── install-lzma.stdout │ ├── lib │ ├── libtool │ ├── Makefile │ ├── po │ ├── share │ ├── src │ ├── stamp-h1 │ └── tests ├── lib-x86_64-w64-mingw32-mconsole │ ├── bin │ ├── build-lzma.stderr │ ├── build-lzma.stdout │ ├── config.h │ ├── config.log │ ├── config.status │ ├── configure-lzma.stderr │ ├── configure-lzma.stdout │ ├── debug │ ├── Doxyfile │ ├── include │ ├── install-lzma.stderr │ ├── install-lzma.stdout │ ├── lib │ ├── libtool │ ├── Makefile │ ├── po │ ├── share │ ├── src │ ├── stamp-h1 │ └── tests ├── untar-lzma.stderr ├── untar-lzma.stdout ├── x86_64-pc-linux-gnu-m32 │ ├── usize32 │ └── usize64 ├── x86_64-pc-linux-gnu-m32-afl │ ├── usize32 │ └── usize64 ├── x86_64-pc-linux-gnu-m64 │ ├── usize32 │ └── usize64 ├── x86_64-pc-linux-gnu-m64-afl │ ├── usize32 │ └── usize64 ├── x86_64-w64-mingw32-mconsole │ ├── usize32 │ └── usize64 └── xz-5.2.1 ├── ABOUT-NLS ├── aclocal.m4 ├── AUTHORS ├── autogen.sh ├── build-aux ├── ChangeLog ├── config.h.in ├── configure ├── configure.ac ├── COPYING ├── COPYING.GPLv2 ├── COPYING.GPLv3 ├── COPYING.LGPLv2.1 ├── debug ├── doc ├── dos ├── Doxyfile.in ├── extra ├── INSTALL ├── INSTALL.generic ├── lib ├── m4 ├── macosx ├── Makefile.am ├── Makefile.in ├── NEWS ├── PACKAGERS ├── po ├── README ├── src ├── tests ├── THANKS ├── TODO └── windows 59 directories, 66 files ```
``` . ├── usize32 │ ├── xoff32 │ │ ├── config.log │ │ ├── configure-xdelta.stderr │ │ └── configure-xdelta.stdout │ └── xoff64 │ ├── config.log │ ├── configure-xdelta.stderr │ └── configure-xdelta.stdout └── usize64 └── xoff64 ├── config.log ├── configure-xdelta.stderr └── configure-xdelta.stdout 5 directories, 9 files ```
```
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by Xdelta3 configure 3.1.1, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure --host=x86_64-pc-linux-gnu --prefix=/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64/usize64/xoff64 --enable-static --disable-shared --enable-debug-symbols CFLAGS=-m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include CXXFLAGS=-m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include CPPFLAGS=-I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include LDFLAGS=-m64 -L/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/lib CC= CXX=
## --------- ##
## Platform. ##
## --------- ##
hostname = bigblue
uname -m = x86_64
uname -r = 3.13.0-123-generic
uname -s = Linux
uname -v = #172+7.0trisquel2 SMP Thu Jun 29 20:03:33 UTC 2017
/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: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games
PATH: /home/retrohacker/.bin
PATH: /home/retrohacker/.fzf/bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2589: checking build system type
configure:2603: result: x86_64-unknown-linux-gnu
configure:2623: checking host system type
configure:2636: result: x86_64-pc-linux-gnu
configure:2677: checking how to print strings
configure:2704: result: printf
configure:2736: checking for x86_64-pc-linux-gnu-gcc
configure:2766: result: no
configure:2776: checking for gcc
configure:2792: found /usr/bin/gcc
configure:2803: result: gcc
configure:3032: checking for C compiler version
configure:3041: gcc --version >&5
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 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:3052: $? = 0
configure:3041: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.4-2ubuntu1~14.04.3' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --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-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
configure:3052: $? = 0
configure:3041: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:3052: $? = 4
configure:3041: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'
gcc: fatal error: no input files
compilation terminated.
configure:3052: $? = 4
configure:3072: checking whether the C compiler works
configure:3094: gcc -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -m64 -L/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/lib conftest.c >&5
configure:3098: $? = 0
configure:3146: result: yes
configure:3149: checking for C compiler default output file name
configure:3151: result: a.out
configure:3157: checking for suffix of executables
configure:3164: gcc -o conftest -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -m64 -L/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/lib conftest.c >&5
configure:3168: $? = 0
configure:3190: result:
configure:3212: checking whether we are cross compiling
configure:3220: gcc -o conftest -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -m64 -L/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/lib conftest.c >&5
configure:3224: $? = 0
configure:3231: ./conftest
configure:3235: $? = 0
configure:3250: result: no
configure:3255: checking for suffix of object files
configure:3277: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:3281: $? = 0
configure:3302: result: o
configure:3306: checking whether we are using the GNU C compiler
configure:3325: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:3325: $? = 0
configure:3334: result: yes
configure:3343: checking whether gcc accepts -g
configure:3363: gcc -c -g -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:3363: $? = 0
configure:3404: result: yes
configure:3421: checking for gcc option to accept ISO C89
configure:3484: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:3484: $? = 0
configure:3497: result: none needed
configure:3522: checking whether gcc understands -c and -o together
configure:3544: gcc -c conftest.c -o conftest2.o
configure:3547: $? = 0
configure:3544: gcc -c conftest.c -o conftest2.o
configure:3547: $? = 0
configure:3559: result: yes
configure:3576: checking for a sed that does not truncate output
configure:3640: result: /bin/sed
configure:3658: checking for grep that handles long lines and -e
configure:3716: result: /bin/grep
configure:3721: checking for egrep
configure:3783: result: /bin/grep -E
configure:3788: checking for fgrep
configure:3850: result: /bin/grep -F
configure:3885: checking for ld used by gcc
configure:3952: result: /usr/bin/ld
configure:3959: checking if the linker (/usr/bin/ld) is GNU ld
configure:3974: result: yes
configure:3986: checking for BSD- or MS-compatible name lister (nm)
configure:4035: result: no
configure:4049: checking for x86_64-pc-linux-gnu-dumpbin
configure:4079: result: no
configure:4049: checking for x86_64-pc-linux-gnu-link
configure:4079: result: no
configure:4093: checking for dumpbin
configure:4123: result: no
configure:4093: checking for link
configure:4109: found /usr/bin/link
configure:4120: result: link -dump
configure:4165: checking the name lister (nm) interface
configure:4172: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:4175: nm "conftest.o"
configure:4178: output
0000000000000000 B some_variable
configure:4185: result: BSD nm
configure:4188: checking whether ln -s works
configure:4192: result: yes
configure:4200: checking the maximum length of command line arguments
configure:4331: result: 1572864
configure:4348: checking whether the shell understands some XSI constructs
configure:4358: result: yes
configure:4362: checking whether the shell understands "+="
configure:4368: result: yes
configure:4403: checking how to convert x86_64-unknown-linux-gnu file names to x86_64-pc-linux-gnu format
configure:4443: result: func_convert_file_noop
configure:4450: checking how to convert x86_64-unknown-linux-gnu file names to toolchain format
configure:4470: result: func_convert_file_noop
configure:4477: checking for /usr/bin/ld option to reload object files
configure:4484: result: -r
configure:4518: checking for x86_64-pc-linux-gnu-objdump
configure:4548: result: no
configure:4558: checking for objdump
configure:4574: found /usr/bin/objdump
configure:4585: result: objdump
configure:4617: checking how to recognize dependent libraries
configure:4815: result: pass_all
configure:4860: checking for x86_64-pc-linux-gnu-dlltool
configure:4890: result: no
configure:4900: checking for dlltool
configure:4930: result: no
configure:4960: checking how to associate runtime and link libraries
configure:4987: result: printf %s\n
configure:5004: checking for x86_64-pc-linux-gnu-ar
configure:5034: result: no
configure:5048: checking for ar
configure:5064: found /usr/bin/ar
configure:5075: result: ar
configure:5112: checking for archiver @FILE support
configure:5129: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:5129: $? = 0
configure:5132: ar cru libconftest.a @conftest.lst >&5
configure:5135: $? = 0
configure:5140: ar cru libconftest.a @conftest.lst >&5
ar: conftest.o: No such file or directory
configure:5143: $? = 1
configure:5155: result: @
configure:5173: checking for x86_64-pc-linux-gnu-strip
configure:5203: result: no
configure:5213: checking for strip
configure:5229: found /usr/bin/strip
configure:5240: result: strip
configure:5272: checking for x86_64-pc-linux-gnu-ranlib
configure:5302: result: no
configure:5312: checking for ranlib
configure:5328: found /usr/bin/ranlib
configure:5339: result: ranlib
configure:5416: checking for gawk
configure:5432: found /usr/bin/gawk
configure:5443: result: gawk
configure:5483: checking command to parse nm output from gcc object
configure:5603: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:5606: $? = 0
configure:5610: nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm
configure:5613: $? = 0
configure:5679: gcc -o conftest -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -m64 -L/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/lib conftest.c conftstm.o >&5
configure:5682: $? = 0
configure:5720: result: ok
configure:5757: checking for sysroot
configure:5787: result: no
configure:5864: gcc -c -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c >&5
configure:5867: $? = 0
configure:6016: checking for x86_64-pc-linux-gnu-mt
configure:6046: result: no
configure:6056: checking for mt
configure:6072: found /bin/mt
configure:6083: result: mt
configure:6106: checking if mt is a manifest tool
configure:6112: mt '-?'
configure:6120: result: no
configure:6762: checking how to run the C preprocessor
configure:6793: gcc -E -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c
configure:6793: $? = 0
configure:6807: gcc -E -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include conftest.c
conftest.c:9:28: fatal error: ac_nonexistent.h: No such file or directory
#include
``` configure: error: source directory already configured; run "make distclean" there first ```
``` checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-pc-linux-gnu checking how to print strings... printf checking for x86_64-pc-linux-gnu-gcc... no checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... no checking for x86_64-pc-linux-gnu-dumpbin... no checking for x86_64-pc-linux-gnu-link... no checking for dumpbin... no checking for link... link -dump checking the name lister (nm) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-unknown-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for x86_64-pc-linux-gnu-objdump... no checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for x86_64-pc-linux-gnu-dlltool... no checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for x86_64-pc-linux-gnu-ar... no checking for ar... ar checking for archiver @FILE support... @ checking for x86_64-pc-linux-gnu-strip... no checking for strip... strip checking for x86_64-pc-linux-gnu-ranlib... no checking for ranlib... ranlib checking for gawk... gawk checking command to parse nm output from gcc object... ok checking for sysroot... no checking for x86_64-pc-linux-gnu-mt... no checking for mt... mt checking if mt is a manifest tool... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking whether make supports nested variables... yes ```
Ah, looks like I'm not supposed to be running ./configure
myself. Updated command that seems to have built a subset of all platforms:
git clone git@github.com:jmacd/xdelta && cd xdelta && wget http://tukaani.org/xz/xz-5.2.1.tar.gz && cd xdelta3 && sed -i 's/1.15/1.14/g' configure.ac && ./generate_build_files.sh && ./run_release.sh
It isn't entirely clear what to do after running ./run_release.sh
, I'm not seeing any shared libraries or anything.
``` untar-lzma ... success Host x86_64-pc-linux-gnu-m32 afl=0 ... liblzma configure-lzma ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/xz-5.2.1/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m32 ... x86_64-pc-linux-gnu-m32-32-32 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32/usize32/xoff32 ... x86_64-pc-linux-gnu-m32-32-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32/usize32/xoff64 ... x86_64-pc-linux-gnu-m32-64-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32/usize64/xoff64 Host x86_64-pc-linux-gnu-m32 afl=1 ... liblzma configure-lzma ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/xz-5.2.1/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m32 ... x86_64-pc-linux-gnu-m32-afl-32-32 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32-afl/usize32/xoff32 ... x86_64-pc-linux-gnu-m32-afl-32-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32-afl/usize32/xoff64 ... x86_64-pc-linux-gnu-m32-afl-64-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m32-afl/usize64/xoff64 Host x86_64-pc-linux-gnu-m64 afl=0 ... liblzma configure-lzma ... success build-lzma ... success install-lzma ... success ... x86_64-pc-linux-gnu-m64-32-32 configure-xdelta ... success ... x86_64-pc-linux-gnu-m64-32-64 configure-xdelta ... success ... x86_64-pc-linux-gnu-m64-64-64 configure-xdelta ... success Host x86_64-pc-linux-gnu-m64 afl=1 ... liblzma configure-lzma ... success build-lzma ... success install-lzma ... success ... x86_64-pc-linux-gnu-m64-afl-32-32 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64-afl/usize32/xoff32 ... x86_64-pc-linux-gnu-m64-afl-32-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64-afl/usize32/xoff64 ... x86_64-pc-linux-gnu-m64-afl-64-64 configure-xdelta ... failed! Error /home/retrohacker/Development/orion/deps/xdelta/xdelta3/configure in /home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64-afl/usize64/xoff64 Host i686-w64-mingw32-mconsole afl=0 ... liblzma configure-lzma ... success build-lzma ... success install-lzma ... success ... i686-w64-mingw32-mconsole-32-32 configure-xdelta ... success ... i686-w64-mingw32-mconsole-32-64 configure-xdelta ... success ... i686-w64-mingw32-mconsole-64-64 configure-xdelta ... success Host x86_64-w64-mingw32-mconsole afl=0 ... liblzma configure-lzma ... success build-lzma ... success install-lzma ... success ... x86_64-w64-mingw32-mconsole-32-32 configure-xdelta ... success ... x86_64-w64-mingw32-mconsole-32-64 configure-xdelta ... success ... x86_64-w64-mingw32-mconsole-64-64 configure-xdelta ... success ```
``` . ├── config.h ├── config.log ├── config.status ├── configure-xdelta.stderr ├── configure-xdelta.stdout ├── libtool ├── Makefile ├── stamp-h1 └── testing 1 directory, 8 files ```
There is a Makefile
and a libtool
file. I think I'm supposed to run the Makefile
, but when I run make
:
``` make all-am make[1]: Entering directory `/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64/usize64/xoff64' gcc -DHAVE_CONFIG_H -I. -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -Wall -Wshadow -fno-builtin -Wextra -Wsign-compare -Wformat=2 -Wno-format-nonliteral -Wno-unused-parameter -Wno-unused-function -std=c99 -DREGRESSION_TEST=1 -DSECONDARY_DJW=1 -DSECONDARY_FGK=1 -DXD3_MAIN=1 -g -DXD3_DEBUG=0 -m64 -DXD3_USE_LARGESIZET=1 -DXD3_USE_LARGEFILE64=1 -I/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/lib-x86_64-pc-linux-gnu-m64/include -MT xdelta3-xdelta3.o -MD -MP -MF .deps/xdelta3-xdelta3.Tpo -c -o xdelta3-xdelta3.o `test -f 'xdelta3.c' || echo '/home/retrohacker/Development/orion/deps/xdelta/xdelta3/'`xdelta3.c In file included from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:30:0, from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.c:264: ./config.h:66:23: error: expected declaration specifiers or ‘...’ before numeric constant #define SIZEOF_SIZE_T 8 ^ /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:170:15: note: in expansion of macro ‘SIZEOF_SIZE_T’ static_assert(SIZEOF_SIZE_T == sizeof(size_t), "SIZEOF_SIZE_T not correctly set"); ^ In file included from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.c:264:0: /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:170:48: error: expected declaration specifiers or ‘...’ before string constant static_assert(SIZEOF_SIZE_T == sizeof(size_t), "SIZEOF_SIZE_T not correctly set"); ^ In file included from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:30:0, from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.c:264: ./config.h:75:35: error: expected declaration specifiers or ‘...’ before numeric constant #define SIZEOF_UNSIGNED_LONG_LONG 8 ^ /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:171:15: note: in expansion of macro ‘SIZEOF_UNSIGNED_LONG_LONG’ static_assert(SIZEOF_UNSIGNED_LONG_LONG == sizeof(unsigned long long), "SIZEOF_UNSIGNED_LONG_LONG not correctly set"); ^ In file included from /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.c:264:0: /home/retrohacker/Development/orion/deps/xdelta/xdelta3/xdelta3.h:171:72: error: expected declaration specifiers or ‘...’ before string constant static_assert(SIZEOF_UNSIGNED_LONG_LONG == sizeof(unsigned long long), "SIZEOF_UNSIGNED_LONG_LONG not correctly set"); ^ make[1]: *** [xdelta3-xdelta3.o] Error 1 make[1]: Leaving directory `/home/retrohacker/Development/orion/deps/xdelta/xdelta3/build/x86_64-pc-linux-gnu-m64/usize64/xoff64' make: *** [all] Error 2 ```
Okay, I can get build/x86_64-pc-linux-gnu-m64/usize32/xoff32
to build using make
but usize32/xoff64
and usize64/xoff64
fail with the above error.
Here is the command I used to build a single target on Trisquel Linux x64:
git clone git@github.com:jmacd/xdelta && cd xdelta && wget http://tukaani.org/xz/xz-5.2.1.tar.gz && cd xdelta3 && sed -i 's/1.15/1.14/g' configure.ac && ./generate_build_files.sh && ./run_release.sh && cd build/x86_64-pc-linux-gnu-m64/usize32/xoff32/ && make
But now I'm not quite sure what to do with what comes out of the build:
``` . ├── config.h ├── config.log ├── config.status ├── configure-xdelta.stderr ├── configure-xdelta.stdout ├── libtool ├── Makefile ├── stamp-h1 ├── testing │ ├── xdelta3checksum-checksum_test_c.o │ ├── xdelta3checksum-checksum_test.o │ ├── xdelta3regtest-regtest_c.o │ └── xdelta3regtest-regtest.o ├── xdelta3 ├── xdelta3checksum ├── xdelta3decode ├── xdelta3decode-xdelta3.o ├── xdelta3regtest └── xdelta3-xdelta3.o 1 directory, 18 files ```
I don't get any header files, and copying the top level xdelta3.h
file into the current directory and trying to build anything with it gives me more errors:
index.c
#include "xdelta3.h"
xd3_stream stream;
int main() {
}
``` In file included from index.c:1:0: xdelta3.h:170:29: error: expected ‘)’ before ‘==’ token static_assert(SIZEOF_SIZE_T == sizeof(size_t), "SIZEOF_SIZE_T not correctly set"); ^ xdelta3.h:171:41: error: expected ‘)’ before ‘==’ token static_assert(SIZEOF_UNSIGNED_LONG_LONG == sizeof(unsigned long long), "SIZEOF_UNSIGNED_LONG_LONG not correctly set"); ^ xdelta3.h:250:2: error: #error Bad configure script #error Bad configure script ^ xdelta3.h:361:9: error: unknown type name ‘usize_t’ usize_t size); ^ xdelta3.h:367:9: error: unknown type name ‘xoff_t’ xoff_t blkno); ^ xdelta3.h:644:3: error: unknown type name ‘usize_t’ usize_t pos; ^ xdelta3.h:645:3: error: unknown type name ‘usize_t’ usize_t size; ^ xdelta3.h:646:3: error: unknown type name ‘xoff_t’ xoff_t addr; ^ xdelta3.h:663:3: error: unknown type name ‘usize_t’ usize_t size; ^ xdelta3.h:664:3: error: unknown type name ‘usize_t’ usize_t addr; ^ xdelta3.h:672:3: error: unknown type name ‘usize_t’ usize_t size; ^ xdelta3.h:673:3: error: unknown type name ‘xoff_t’ xoff_t addr; ^ xdelta3.h:674:3: error: unknown type name ‘xoff_t’ xoff_t position; /* absolute position of this inst */ ^ xdelta3.h:681:3: error: unknown type name ‘usize_t’ usize_t next; ^ xdelta3.h:682:3: error: unknown type name ‘usize_t’ usize_t avail; ^ xdelta3.h:691:3: error: unknown type name ‘usize_t’ usize_t size; ^ xdelta3.h:692:3: error: unknown type name ‘usize_t’ usize_t pos; ^ xdelta3.h:696:3: error: unknown type name ‘usize_t’ usize_t alloc1; ^ xdelta3.h:700:3: error: unknown type name ‘usize_t’ usize_t alloc2; ^ xdelta3.h:706:3: error: unknown type name ‘usize_t’ usize_t s_near; ^ xdelta3.h:707:3: error: unknown type name ‘usize_t’ usize_t s_same; ^ xdelta3.h:708:3: error: unknown type name ‘usize_t’ usize_t next_slot; /* the circular index for near */ ^ xdelta3.h:709:3: error: unknown type name ‘usize_t’ usize_t *near_array; /* array of size s_near */ ^ xdelta3.h:710:3: error: unknown type name ‘usize_t’ usize_t *same_array; /* array of size s_same*256 */ ^ xdelta3.h:727:3: error: unknown type name ‘usize_t’ usize_t large_look; ^ xdelta3.h:728:3: error: unknown type name ‘usize_t’ usize_t large_step; ^ xdelta3.h:729:3: error: unknown type name ‘usize_t’ usize_t small_look; ^ xdelta3.h:730:3: error: unknown type name ‘usize_t’ usize_t small_chain; ^ xdelta3.h:731:3: error: unknown type name ‘usize_t’ usize_t small_lchain; ^ xdelta3.h:732:3: error: unknown type name ‘usize_t’ usize_t max_lazy; ^ xdelta3.h:733:3: error: unknown type name ‘usize_t’ usize_t long_enough; ^ xdelta3.h:739:3: error: unknown type name ‘usize_t’ usize_t size; // Number of buckets ^ xdelta3.h:740:3: error: unknown type name ‘usize_t’ usize_t shift; ^ xdelta3.h:741:3: error: unknown type name ‘usize_t’ usize_t mask; ^ xdelta3.h:742:3: error: unknown type name ‘usize_t’ usize_t look; // How wide is this checksum ^ xdelta3.h:743:3: error: unknown type name ‘usize_t’ usize_t multiplier; // K * powers[0] ^ xdelta3.h:744:3: error: unknown type name ‘usize_t’ usize_t *powers; // Array of [0,look) where powers[look-1] == 1 ^ xdelta3.h:751:3: error: unknown type name ‘usize_t’ usize_t last_pos; ^ xdelta3.h:756:3: error: unknown type name ‘xoff_t’ xoff_t offset; ^ xdelta3.h:757:3: error: unknown type name ‘usize_t’ usize_t length; ^ xdelta3.h:763:3: error: unknown type name ‘usize_t’ usize_t addslen; ^ xdelta3.h:765:3: error: unknown type name ‘usize_t’ usize_t adds_alloc; ^ xdelta3.h:767:3: error: unknown type name ‘usize_t’ usize_t instlen; ^ xdelta3.h:769:3: error: unknown type name ‘usize_t’ usize_t inst_alloc; ^ xdelta3.h:771:3: error: unknown type name ‘usize_t’ usize_t wininfolen; ^ xdelta3.h:773:3: error: unknown type name ‘usize_t’ usize_t wininfo_alloc; ^ xdelta3.h:775:3: error: unknown type name ‘xoff_t’ xoff_t length; ^ xdelta3.h:786:3: error: unknown type name ‘usize_t’ usize_t ngroups; /* Number of DJW Huffman groups. */ ^ xdelta3.h:787:3: error: unknown type name ‘usize_t’ usize_t sector_size; /* Sector size. */ ^ xdelta3.h:794:3: error: unknown type name ‘usize_t’ usize_t winsize; /* The encoder window size. */ ^ xdelta3.h:795:3: error: unknown type name ‘usize_t’ usize_t sprevsz; /* How far back small string ^ xdelta3.h:797:3: error: unknown type name ‘usize_t’ usize_t iopt_size; /* entries in the ^ xdelta3.h:801:3: error: unknown type name ‘xd3_getblk_func’ xd3_getblk_func *getblk; /* The three callbacks. */ ^ xdelta3.h:802:3: error: unknown type name ‘xd3_alloc_func’ xd3_alloc_func *alloc; ^ xdelta3.h:829:3: error: unknown type name ‘usize_t’ usize_t blksize; /* block size */ ^ xdelta3.h:833:3: error: unknown type name ‘xoff_t’ xoff_t max_winsize; /* maximum visible buffer */ ^ xdelta3.h:836:3: error: unknown type name ‘xoff_t’ xoff_t curblkno; /* current block number: client ^ xdelta3.h:838:3: error: unknown type name ‘usize_t’ usize_t onblk; /* number of bytes on current ^ xdelta3.h:845:3: error: unknown type name ‘usize_t’ usize_t srclen; /* length of this source window */ ^ xdelta3.h:846:3: error: unknown type name ‘xoff_t’ xoff_t srcbase; /* offset of this source window ^ xdelta3.h:848:3: error: unknown type name ‘usize_t’ usize_t shiftby; /* for power-of-two blocksizes */ ^ xdelta3.h:849:3: error: unknown type name ‘usize_t’ usize_t maskby; /* for power-of-two blocksizes */ ^ xdelta3.h:850:3: error: unknown type name ‘xoff_t’ xoff_t cpyoff_blocks; /* offset of dec_cpyoff in blocks */ ^ xdelta3.h:851:3: error: unknown type name ‘usize_t’ usize_t cpyoff_blkoff; /* offset of copy window in ^ xdelta3.h:853:3: error: unknown type name ‘xoff_t’ xoff_t getblkno; /* request block number: xd3 sets ^ xdelta3.h:857:3: error: unknown type name ‘xoff_t’ xoff_t max_blkno; /* Maximum block, if eof is known, ^ xdelta3.h:860:3: error: unknown type name ‘usize_t’ usize_t onlastblk; /* Number of bytes on max_blkno */ ^ xdelta3.h:872:3: error: unknown type name ‘usize_t’ usize_t avail_in; /* number of bytes available at ^ xdelta3.h:874:3: error: unknown type name ‘xoff_t’ xoff_t total_in; /* how many bytes in */ ^ xdelta3.h:878:3: error: unknown type name ‘usize_t’ usize_t avail_out; /* number of bytes available at ^ xdelta3.h:880:3: error: unknown type name ‘usize_t’ usize_t space_out; /* total out space */ ^ xdelta3.h:881:3: error: unknown type name ‘xoff_t’ xoff_t current_window; /* number of windows encoded/decoded */ ^ xdelta3.h:882:3: error: unknown type name ‘xoff_t’ xoff_t total_out; /* how many bytes out */ ^ xdelta3.h:892:3: error: unknown type name ‘usize_t’ usize_t winsize; /* suggested window size */ ^ xdelta3.h:893:3: error: unknown type name ‘usize_t’ usize_t sprevsz; /* small string, previous window ^ xdelta3.h:895:3: error: unknown type name ‘usize_t’ usize_t sprevmask; /* small string, previous window ^ xdelta3.h:897:3: error: unknown type name ‘usize_t’ usize_t iopt_size; ^ xdelta3.h:898:3: error: unknown type name ‘usize_t’ usize_t iopt_unlimited; ^ xdelta3.h:901:3: error: unknown type name ‘xd3_getblk_func’ xd3_getblk_func *getblk; /* set nxtblk, nxtblkno to scanblkno */ ^ xdelta3.h:902:3: error: unknown type name ‘xd3_alloc_func’ xd3_alloc_func *alloc; /* malloc function */ ^ xdelta3.h:915:3: error: unknown type name ‘usize_t’ usize_t *large_table; /* table of large checksums */ ^ xdelta3.h:918:3: error: unknown type name ‘usize_t’ usize_t *small_table; /* table of small checksums */ ^ xdelta3.h:928:3: error: unknown type name ‘usize_t’ usize_t taroff; /* base offset of the target input */ ^ xdelta3.h:929:3: error: unknown type name ‘usize_t’ usize_t input_position; /* current input position */ ^ xdelta3.h:930:3: error: unknown type name ‘usize_t’ usize_t min_match; /* current minimum match ^ xdelta3.h:933:3: error: unknown type name ‘usize_t’ usize_t unencoded_offset; /* current input, first ^ xdelta3.h:947:3: error: unknown type name ‘xoff_t’ xoff_t srcwin_cksum_pos; /* Source checksum position */ ^ xdelta3.h:951:3: error: unknown type name ‘xoff_t’ xoff_t match_srcpos; /* current match source ^ xdelta3.h:954:3: error: unknown type name ‘xoff_t’ xoff_t match_last_srcpos; /* previously attempted ^ xdelta3.h:956:3: error: unknown type name ‘xoff_t’ xoff_t match_minaddr; /* smallest matching address to ^ xdelta3.h:959:3: error: unknown type name ‘xoff_t’ xoff_t match_maxaddr; /* largest matching address to ^ xdelta3.h:962:3: error: unknown type name ‘usize_t’ usize_t match_back; /* match extends back so far */ ^ xdelta3.h:963:3: error: unknown type name ‘usize_t’ usize_t match_maxback; /* match extends back maximum */ ^ xdelta3.h:964:3: error: unknown type name ‘usize_t’ usize_t match_fwd; /* match extends forward so far */ ^ xdelta3.h:965:3: error: unknown type name ‘usize_t’ usize_t match_maxfwd; /* match extends forward maximum */ ^ xdelta3.h:967:3: error: unknown type name ‘xoff_t’ xoff_t maxsrcaddr; /* address of the last source ^ xdelta3.h:971:3: error: unknown type name ‘usize_t’ usize_t buf_avail; /* amount of saved input */ ^ xdelta3.h:974:3: error: unknown type name ‘usize_t’ usize_t buf_leftavail; /* amount of leftover content */ ^ xdelta3.h:991:3: error: unknown type name ‘usize_t’ usize_t enc_appheadsz; /* application header size */ ^ xdelta3.h:995:3: error: unknown type name ‘usize_t’ usize_t dec_hdr_ind; /* VCDIFF header indicator */ ^ xdelta3.h:996:3: error: unknown type name ‘usize_t’ usize_t dec_win_ind; /* VCDIFF window indicator */ ^ xdelta3.h:997:3: error: unknown type name ‘usize_t’ usize_t dec_del_ind; /* VCDIFF delta indicator */ ^ xdelta3.h:1000:3: error: unknown type name ‘usize_t’ usize_t dec_magicbytes; /* Magic position. */ ^ xdelta3.h:1002:3: error: unknown type name ‘usize_t’ usize_t dec_secondid; /* Optional secondary compressor ID. */ ^ xdelta3.h:1004:3: error: unknown type name ‘usize_t’ usize_t dec_codetblsz; /* Optional code table: length. */ ^ xdelta3.h:1006:3: error: unknown type name ‘usize_t’ usize_t dec_codetblbytes; /* Optional code table: position. */ ^ xdelta3.h:1008:3: error: unknown type name ‘usize_t’ usize_t dec_appheadsz; /* Optional application header: ^ xdelta3.h:1012:3: error: unknown type name ‘usize_t’ usize_t dec_appheadbytes; /* Optional application header: ^ xdelta3.h:1015:3: error: unknown type name ‘usize_t’ usize_t dec_cksumbytes; /* Optional checksum: position. */ ^ xdelta3.h:1019:3: error: unknown type name ‘usize_t’ usize_t dec_cpylen; /* length of copy window ^ xdelta3.h:1021:3: error: unknown type name ‘xoff_t’ xoff_t dec_cpyoff; /* offset of copy window ^ xdelta3.h:1023:3: error: unknown type name ‘usize_t’ usize_t dec_enclen; /* length of delta encoding */ ^ xdelta3.h:1024:3: error: unknown type name ‘usize_t’ usize_t dec_tgtlen; /* length of target window */ ^ xdelta3.h:1033:3: error: unknown type name ‘xoff_t’ xoff_t dec_winstart; /* offset of the start of ^ xdelta3.h:1035:3: error: unknown type name ‘xoff_t’ xoff_t dec_window_count; /* == current_window + 1 in ^ xdelta3.h:1037:3: error: unknown type name ‘usize_t’ usize_t dec_winbytes; /* bytes of the three sections ^ xdelta3.h:1039:3: error: unknown type name ‘usize_t’ usize_t dec_hdrsize; /* VCDIFF + app header size */ ^ xdelta3.h:1048:3: error: unknown type name ‘usize_t’ usize_t dec_position; /* current decoder position ^ xdelta3.h:1051:3: error: unknown type name ‘usize_t’ usize_t dec_maxpos; /* maximum decoder position ^ xdelta3.h:1060:3: error: unknown type name ‘usize_t’ usize_t dec_lastlen; /* length of the last target ^ xdelta3.h:1062:3: error: unknown type name ‘xoff_t’ xoff_t dec_laststart; /* offset of the start of last ^ xdelta3.h:1064:3: error: unknown type name ‘usize_t’ usize_t dec_lastspace; /* allocated space of last ^ xdelta3.h:1088:3: error: unknown type name ‘xoff_t’ xoff_t n_scpy; ^ xdelta3.h:1089:3: error: unknown type name ‘xoff_t’ xoff_t n_tcpy; ^ xdelta3.h:1090:3: error: unknown type name ‘xoff_t’ xoff_t n_add; ^ xdelta3.h:1091:3: error: unknown type name ‘xoff_t’ xoff_t n_run; ^ xdelta3.h:1093:3: error: unknown type name ‘xoff_t’ xoff_t l_scpy; ^ xdelta3.h:1094:3: error: unknown type name ‘xoff_t’ xoff_t l_tcpy; ^ xdelta3.h:1095:3: error: unknown type name ‘xoff_t’ xoff_t l_add; ^ xdelta3.h:1096:3: error: unknown type name ‘xoff_t’ xoff_t l_run; ^ xdelta3.h:1098:3: error: unknown type name ‘usize_t’ usize_t i_slots_used; ^ xdelta3.h:1123:7: error: unknown type name ‘usize_t’ usize_t input_size, ^ xdelta3.h:1125:7: error: unknown type name ‘usize_t’ usize_t source_size, ^ xdelta3.h:1127:7: error: unknown type name ‘usize_t’ usize_t *output_size, ^ xdelta3.h:1128:7: error: unknown type name ‘usize_t’ usize_t avail_output, ^ xdelta3.h:1133:7: error: unknown type name ‘usize_t’ usize_t input_size, ^ xdelta3.h:1135:7: error: unknown type name ‘usize_t’ usize_t source_size, ^ xdelta3.h:1137:7: error: unknown type name ‘usize_t’ usize_t *output_size, ^ xdelta3.h:1138:7: error: unknown type name ‘usize_t’ usize_t avail_output, ^ xdelta3.h:1184:7: error: unknown type name ‘usize_t’ usize_t input_size, ^ xdelta3.h:1186:7: error: unknown type name ‘usize_t’ usize_t *output_size, ^ xdelta3.h:1187:7: error: unknown type name ‘usize_t’ usize_t avail_output); ^ xdelta3.h:1192:7: error: unknown type name ‘usize_t’ usize_t input_size, ^ xdelta3.h:1194:7: error: unknown type name ‘usize_t’ usize_t *output_size, ^ xdelta3.h:1195:7: error: unknown type name ‘usize_t’ usize_t avail_size); ^ xdelta3.h:1295:6: error: unknown type name ‘xoff_t’ xoff_t source_size); ^ xdelta3.h:1301:7: error: unknown type name ‘usize_t’ usize_t size); ^ xdelta3.h:1309:7: error: unknown type name ‘usize_t’ usize_t *size); ^ xdelta3.h:1323:8: error: unknown type name ‘usize_t’ usize_t pos, usize_t size, ^ xdelta3.h:1323:21: error: unknown type name ‘usize_t’ usize_t pos, usize_t size, ^ xdelta3.h:1324:8: error: unknown type name ‘xoff_t’ xoff_t addr, int is_source); ^ xdelta3.h:1359:6: error: unknown type name ‘usize_t’ usize_t isize) ^ xdelta3.h:1387:1: error: unknown type name ‘xoff_t’ xoff_t xd3_encoder_srcbase (xd3_stream *stream) { ^ xdelta3.h:1391:1: error: unknown type name ‘usize_t’ usize_t xd3_encoder_srclen (xd3_stream *stream) { ^ xdelta3.h:1418:1: error: unknown type name ‘xoff_t’ void xd3_blksize_div (const xoff_t offset, ^ xdelta3.h:1420:9: error: unknown type name ‘xoff_t’ xoff_t *blkno, ^ xdelta3.h:1421:9: error: unknown type name ‘usize_t’ usize_t *blkoff) { ^ xdelta3.h:1428:23: error: unknown type name ‘xoff_t’ void xd3_blksize_add (xoff_t *blkno, ^ xdelta3.h:1429:9: error: unknown type name ‘usize_t’ usize_t *blkoff, ^ xdelta3.h:1431:9: error: unknown type name ‘usize_t’ const usize_t add) ^ ```
Hmm, this seems to make some of the errors go away:
gcc -DHAVE_CONFIG_H index.c
In file included from xdelta3.h:30:0,
from index.c:1:
config.h:66:23: error: expected declaration specifiers or ‘...’ before numeric constant
#define SIZEOF_SIZE_T 8
^
xdelta3.h:170:15: note: in expansion of macro ‘SIZEOF_SIZE_T’
static_assert(SIZEOF_SIZE_T == sizeof(size_t), "SIZEOF_SIZE_T not correctly set");
^
In file included from index.c:1:0:
xdelta3.h:170:48: error: expected declaration specifiers or ‘...’ before string constant
static_assert(SIZEOF_SIZE_T == sizeof(size_t), "SIZEOF_SIZE_T not correctly set");
^
In file included from xdelta3.h:30:0,
from index.c:1:
config.h:75:35: error: expected declaration specifiers or ‘...’ before numeric constant
#define SIZEOF_UNSIGNED_LONG_LONG 8
^
xdelta3.h:171:15: note: in expansion of macro ‘SIZEOF_UNSIGNED_LONG_LONG’
static_assert(SIZEOF_UNSIGNED_LONG_LONG == sizeof(unsigned long long), "SIZEOF_UNSIGNED_LONG_LONG not correctly set");
^
In file included from index.c:1:0:
xdelta3.h:171:72: error: expected declaration specifiers or ‘...’ before string constant
static_assert(SIZEOF_UNSIGNED_LONG_LONG == sizeof(unsigned long long), "SIZEOF_UNSIGNED_LONG_LONG not correctly set");
^
I'm having exactly the same problem (Ubuntu 16.04.3 LTS). Running make
in build/x86_64-pc-linux-gnu-m64/usize32/xoff32
will successfully create an executable, but all others fail with the same messages relating to SIZEOF_SIZE_T
etc.
I assume we're missing a tool or dependency somewhere, but I don't have the level of C/C++/tooling knowledge to figure out what... I've added an issue requesting some basic help: #237
I got it to work partially:
fresh MSys64 installation from here: https://www.msys2.org/ (the x86_64)
commands in msys shell: pacman -S --noconfirm git pacman -S --noconfirm --needed base-devel pacman -S --noconfirm --needed msys2-devel pacman -S --noconfirm --needed mingw-w64-i686-toolchain pacman -S --noconfirm --needed mingw-w64-x86_64-toolchain
git clone --recursive https://github.com/jmacd/xdelta.git cd xdelta/ wget https://kent.dl.sourceforge.net/project/lzmautils/xz-5.2.1.tar.gz cd xdelta3/ ./generate_build_files.sh ./run_release.sh
some errors are fixed but for some reason it fails at build-lzma, (stderr says there are errors in the xz dependency ?)
Download the source from the ubuntu package and compile that instead... (Hey it works...) https://launchpad.net/ubuntu/+source/xdelta3/3.0.11-dfsg-1ubuntu1
Do the following:
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/xdelta3/3.0.11-dfsg-1ubuntu1/xdelta3_3.0.11-dfsg.orig.tar.xz tar -xf xdelta3_3.0.11-dfsg.orig.tar.xz cd xdelta3-3.0.11-dfsg ./configure make
Now use or move the xdelta3 file
Hi, mm, the idea is can compile the last version, 3.1, 3.0.11 still works, seems the problem (as someone say above), is missed the HAVE_CONFIG_H in gcc, is defined but for some reasson not passed...
The problem is the release3_1 branch is not frozen at the state of the actual release. It seems there is live development going on there and it's state is not really stable. Instead of cloning that one should be downloading the tagged release snapshot of the source.
In there there is no generate_build_files.sh. Apparently that came as part of new work after the actual release that is still unfinished. Looks like it needs #241 to compile but it is unknown whether that way of fixing it was the original authors intention.
So anyways, one has to get the zip with the source from the link above and then building is really simple. One just has to do:
autoreconf --install
./configure
make
in the folder where the source resides. Also there is configure --help
which is well written and lists all available options. Also, one can do make(space)(tab)(tab)
on the command line to see all make options,
I assume I need to run the run_release.sh scrip to compile from sources. When I do that ...
libtoolize: putting auxiliary files in
.'. libtoolize: linking file
./ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR,m4'. libtoolize: linking file
m4/libtool.m4' libtoolize: linking filem4/ltoptions.m4' libtoolize: linking file
m4/ltsugar.m4' libtoolize: linking filem4/ltversion.m4' libtoolize: linking file
m4/lt~obsolete.m4' configure.ac: error: no proper invocation of AM_INIT_AUTOMAKE was found. configure.ac: You should verify that configure.ac invokes AM_INIT_AUTOMAKE, configure.ac: that aclocal.m4 is present in the top-level directory, configure.ac: and that aclocal.m4 was recently regenerated (using aclocal) Makefile.am:85: error: DEBUG_SYMBOLS does not appear in AM_CONDITIONAL Makefile.am: installing './INSTALL' Makefile.am: error: required file './NEWS' not found Makefile.am: error: required file './README' not found Makefile.am: error: required file './AUTHORS' not found Makefile.am: error: required file './ChangeLog' not found Makefile.am: installing './COPYING' using GNU General Public License v3 file Makefile.am: Consider adding the COPYING file to the version control system Makefile.am: for your code, to avoid questions about which license your project uses configure.ac:49: error: required file 'config.h.in' not found Makefile.am: installing './depcomp' /usr/local/share/automake-1.15/am/depend2.am: error: amfastdepCC does not appear in AM_CONDITIONAL /usr/local/share/automake-1.15/am/depend2.am: The usual way to define 'am__fastdepCC' is to add 'AC_PROG_CC' /usr/local/share/automake-1.15/am/depend2.am: to 'configure.ac' and run 'aclocal' and 'autoconf' again /usr/local/share/automake-1.15/am/depend2.am: error: AMDEP does not appear in AM_CONDITIONAL /usr/local/share/automake-1.15/am/depend2.am: The usual way to define 'AMDEP' is to add one of the compiler tests /usr/local/share/automake-1.15/am/depend2.am: AC_PROG_CC, AC_PROG_CXX, AC_PROG_OBJC, AC_PROG_OBJCXX, /usr/local/share/automake-1.15/am/depend2.am: AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC /usr/local/share/automake-1.15/am/depend2.am: to 'configure.ac' and run 'aclocal' and 'autoconf' again /usr/local/share/automake-1.15/am/depend2.am: error: amfastdepCXX does not appear in AM_CONDITIONAL /usr/local/share/automake-1.15/am/depend2.am: The usual way to define 'am__fastdepCXX' is to add 'AC_PROG_CXX' /usr/local/share/automake-1.15/am/depend2.am: to 'configure.ac' and run 'aclocal' and 'autoconf' again configure.ac:5: error: required file './compile' not found configure.ac:5: 'automake --add-missing' can install 'compile' configure.ac:5: error: required file './config.guess' not found configure.ac:5: 'automake --add-missing' can install 'config.guess' configure.ac:5: error: required file './config.sub' not found configure.ac:5: 'automake --add-missing' can install 'config.sub' configure.ac:6: error: required file './install-sh' not found configure.ac:6: 'automake --add-missing' can install 'install-sh' configure.ac:6: error: required file './missing' not found configure.ac:6: 'automake --add-missing' can install 'missing' untar-lzma ... failed! Error tar in /home/andy/Windspring/xdelta/xdelta3/build