I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Rob Willett
Hi

I'm trying to build the SQLite packages from the source. I **only** want
it to get a copy of sqlite_analyse which for some reason doesn't appear
to be easily available as a compiled option. The download package
doesn't work on Ubuntu 16.04 and as far as we can see, there are no
other downloadable binaries that don't come from China. For some reason,
I don't really want to download something from Beijing....

The full steps I followed are at the very bottom of this e-mail. They
are a direct copy from my terminal output.

**TLDR Summary**

1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
running under OpenVZ on a commercial ISP. It's patched to the current
levels. I don't think this is a problem as we don't have any other
issues but...

2. SQLite3 is already installed as the normal (and older) SQLIte that is
distributed with Ubuntu 16.04 LTS

3. gcc is installed. I have created a small C program to test that it
can compile (Hello World) and it's fine. (gcc (Ubuntu
5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)

4. Downloaded https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz 
through wget.

5. Checked the sha1sum and it matches the sqlite page.

6. Untarred the file into it's own directory

7. cd'ed to directory and ran ./configure.

8. Checked output of configure and nothing seemed wrong. Details are
below.

9. Ran make and get a compiler failure!  (see below). I'm gobsmacked
that the compiler has failed to be honest. So my first assumption is
that we have cocked up something. However we've googled and checked and
can't see anybody with a similar issue. I suspect that one of the Define
statements is not playing nicely but not wholly sure which one OR we are
missing a package that needs to be installed, e.g. TCL x,y or z.

root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
/bin/bash ./libtool  --tag=CC   --mode=compile gcc
-DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
-DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
-DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
-DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1
-DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1
-DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    
-D_REENTRANT=1 -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5
-DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD -MP -MF
.deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
-DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
"-DPACKAGE_STRING=\"sqlite 3.24.0\""
-DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
-DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1
-DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1
-DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.
-D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5
-DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF
.deps/sqlite3.Tpo -c sqlite3.c  -fPIC -DPIC -o .libs/sqlite3.o
gcc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
Makefile:539: recipe for target 'sqlite3.lo' failed
make: *** [sqlite3.lo] Error 1

10. I checked the Makefile but there's no obvious issue

11. We've done this three times now with the same result.

12. The fact the compiler barfs is worrying, we know how many people use
SQLite so for this sort of error to occur is a little surprising and we
still [hidden email] its our fault, but we
cannot see what we have done wrong.

Any help or suggestions welcomed. I have to say I am sick to the back
teeth of reading websites that purport to tell you how to compile SQLite
to find that it simply consists of apt-get install sqlite3 (or
whatever). The signal to noise ration here is very, very low. We need a
clickbait filter.

Thanks

Rob
-----------------------------------------


**Detailed summary**

wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
--2018-07-09 08:28:39--  
https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
2600:3c00::f03c:91ff:fe96:b959
Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
connected.
HTTP request sent, awaiting response... 200 OK
Length: 2699252 (2.6M) [application/x-gzip]
Saving to: 'sqlite-autoconf-3240000.tar.gz'

sqlite-autoconf-3240000.tar.gz                            
100%[========================================================================================================================================>]
   2.57M  1.43MB/s    in 1.8s

2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz' saved
[2699252/2699252]

root@preprod1:/jambuster/src/sqlite# sha1sum
sqlite-autoconf-3240000.tar.gz
da68915e3563b5244cbcdb6c7e20fb35559bcfc6  sqlite-autoconf-3240000.tar.gz

root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
--version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
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.

root@preprod1:/jambuster/src/sqlite# tar tzf
sqlite-autoconf-3240000.tar.gz
sqlite-autoconf-3240000/
sqlite-autoconf-3240000/compile
sqlite-autoconf-3240000/config.guess
sqlite-autoconf-3240000/configure
sqlite-autoconf-3240000/sqlite3ext.h
sqlite-autoconf-3240000/aclocal.m4
sqlite-autoconf-3240000/install-sh
sqlite-autoconf-3240000/depcomp
sqlite-autoconf-3240000/sqlite3.c
sqlite-autoconf-3240000/INSTALL
sqlite-autoconf-3240000/sqlite3.pc.in
sqlite-autoconf-3240000/missing
sqlite-autoconf-3240000/Makefile.am
sqlite-autoconf-3240000/config.sub
sqlite-autoconf-3240000/sqlite3.h
sqlite-autoconf-3240000/Makefile.in
sqlite-autoconf-3240000/README.txt
sqlite-autoconf-3240000/tea/
sqlite-autoconf-3240000/tea/configure
sqlite-autoconf-3240000/tea/aclocal.m4
sqlite-autoconf-3240000/tea/README
sqlite-autoconf-3240000/tea/tclconfig/
sqlite-autoconf-3240000/tea/tclconfig/install-sh
sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
sqlite-autoconf-3240000/tea/doc/
sqlite-autoconf-3240000/tea/doc/sqlite3.n
sqlite-autoconf-3240000/tea/Makefile.in
sqlite-autoconf-3240000/tea/license.terms
sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
sqlite-autoconf-3240000/tea/win/
sqlite-autoconf-3240000/tea/win/rules.vc
sqlite-autoconf-3240000/tea/win/makefile.vc
sqlite-autoconf-3240000/tea/win/nmakehlp.c
sqlite-autoconf-3240000/tea/generic/
sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
sqlite-autoconf-3240000/tea/configure.ac
sqlite-autoconf-3240000/shell.c
sqlite-autoconf-3240000/Makefile.msc
sqlite-autoconf-3240000/sqlite3.1
sqlite-autoconf-3240000/ltmain.sh
sqlite-autoconf-3240000/Makefile.fallback
sqlite-autoconf-3240000/Replace.cs
sqlite-autoconf-3240000/sqlite3.rc
sqlite-autoconf-3240000/configure.ac

root@preprod1:/jambuster/src/sqlite# tar xvfz
sqlite-autoconf-3240000.tar.gz
sqlite-autoconf-3240000/
sqlite-autoconf-3240000/compile
sqlite-autoconf-3240000/config.guess
sqlite-autoconf-3240000/configure
sqlite-autoconf-3240000/sqlite3ext.h
sqlite-autoconf-3240000/aclocal.m4
sqlite-autoconf-3240000/install-sh
sqlite-autoconf-3240000/depcomp
sqlite-autoconf-3240000/sqlite3.c
sqlite-autoconf-3240000/INSTALL
sqlite-autoconf-3240000/sqlite3.pc.in
sqlite-autoconf-3240000/missing
sqlite-autoconf-3240000/Makefile.am
sqlite-autoconf-3240000/config.sub
sqlite-autoconf-3240000/sqlite3.h
sqlite-autoconf-3240000/Makefile.in
sqlite-autoconf-3240000/README.txt
sqlite-autoconf-3240000/tea/
sqlite-autoconf-3240000/tea/configure
sqlite-autoconf-3240000/tea/aclocal.m4
sqlite-autoconf-3240000/tea/README
sqlite-autoconf-3240000/tea/tclconfig/
sqlite-autoconf-3240000/tea/tclconfig/install-sh
sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
sqlite-autoconf-3240000/tea/doc/
sqlite-autoconf-3240000/tea/doc/sqlite3.n
sqlite-autoconf-3240000/tea/Makefile.in
sqlite-autoconf-3240000/tea/license.terms
sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
sqlite-autoconf-3240000/tea/win/
sqlite-autoconf-3240000/tea/win/rules.vc
sqlite-autoconf-3240000/tea/win/makefile.vc
sqlite-autoconf-3240000/tea/win/nmakehlp.c
sqlite-autoconf-3240000/tea/generic/
sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
sqlite-autoconf-3240000/tea/configure.ac
sqlite-autoconf-3240000/shell.c
sqlite-autoconf-3240000/Makefile.msc
sqlite-autoconf-3240000/sqlite3.1
sqlite-autoconf-3240000/ltmain.sh
sqlite-autoconf-3240000/Makefile.fallback
sqlite-autoconf-3240000/Replace.cs
sqlite-autoconf-3240000/sqlite3.rc
sqlite-autoconf-3240000/configure.ac

root@preprod1:/jambuster/src/sqlite# ls
sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000

root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
aclocal.m4  config.guess  configure depcomp  install-sh  
Makefile.am Makefile.in   missing  Replace.cs  sqlite3.1  sqlite3ext.h  
sqlite3.pc.in  tea
compile     config.sub  configure.ac INSTALL  ltmain.sh  
Makefile.fallback Makefile.msc  README.txt  shell.c     sqlite3.c  
sqlite3.h     sqlite3.rc

root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ./configure
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 for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
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 dependency style of gcc... gcc3
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
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 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... 1966080
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 command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
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 fdatasync... yes
checking for usleep... yes
checking for fullfsync... no
checking for localtime_r... yes
checking for gmtime_r... yes
checking whether strerror_r is declared... yes
checking for strerror_r... yes
checking whether strerror_r returns char *... no
checking editline/readline.h usability... no
checking editline/readline.h presence... no
checking for editline/readline.h... no
checking readline/readline.h usability... no
checking readline/readline.h presence... no
checking for readline/readline.h... no
checking for library containing pthread_create... -lpthread
checking for library containing pthread_mutexattr_init... none required
checking for library containing dlopen... -ldl
checking for whether to support dynamic extensions... yes
checking for library containing log... -lm
checking for posix_fallocate... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for library containing deflate... -lz
checking for library containing system... none required
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating sqlite3.pc
config.status: executing depfiles commands
config.status: executing libtool commands

root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
/bin/bash ./libtool  --tag=CC   --mode=compile gcc
-DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
-DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
-DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
-DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1
-DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1
-DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    
-D_REENTRANT=1 -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5
-DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD -MP -MF
.deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
-DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
"-DPACKAGE_STRING=\"sqlite 3.24.0\""
-DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
-DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1
-DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1
-DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.
-D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5
-DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF
.deps/sqlite3.Tpo -c sqlite3.c  -fPIC -DPIC -o .libs/sqlite3.o
gcc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
Makefile:539: recipe for target 'sqlite3.lo' failed
make: *** [sqlite3.lo] Error 1
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Clemens Ladisch
[hidden email] wrote:
> gcc: internal compiler error: Killed (program cc1)

This is a compiler bug.  Check if updating gcc to a current version helps.

> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.

Otherwise, do this.


Regards,
Clemens
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Rob Willett
Clemens,

Thanks. We were up to date anyway, but we did check and we still get the
same error.

It does look like a compiler bug, also nobody else seems to have
reported it, which I think is very odd. I cannot be the first person to
compile this version of SQLite on Ubuntu 16.04 server.

We'll work out how to report it. I still have the same problem of trying
to get hold of a copy of SQLite_analyze though :( Which is what I wanted
to do in the first place.

Rob

On 9 Jul 2018, at 11:24, Clemens Ladisch wrote:

> [hidden email] wrote:
>> gcc: internal compiler error: Killed (program cc1)
>
> This is a compiler bug.  Check if updating gcc to a current version
> helps.
>
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>
> Otherwise, do this.
>
>
> Regards,
> Clemens
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Dan Kennedy-4
In reply to this post by Rob Willett
On 07/09/2018 03:56 PM, [hidden email] wrote:
> Hi
>
> I'm trying to build the SQLite packages from the source. I **only**
> want it to get a copy of sqlite_analyse which for some reason doesn't
> appear to be easily available as a compiled option. The download
> package doesn't work on Ubuntu 16.04 and as far as we can see, there
> are no other downloadable binaries that don't come from China. For
> some reason, I don't really want to download something from Beijing....

The Linux binaries on sqlite.org are for 32-bit systems. For them to
work on Ubuntu 16.04, you probably need to install multiarch support.

Or, to build sqlite3_analyzer from source you need the full source
distribution:

   https://www.sqlite.org/2018/sqlite-src-3240000.zip

Dan.



>
> The full steps I followed are at the very bottom of this e-mail. They
> are a direct copy from my terminal output.
>
> **TLDR Summary**
>
> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
> running under OpenVZ on a commercial ISP. It's patched to the current
> levels. I don't think this is a problem as we don't have any other
> issues but...
>
> 2. SQLite3 is already installed as the normal (and older) SQLIte that
> is distributed with Ubuntu 16.04 LTS
>
> 3. gcc is installed. I have created a small C program to test that it
> can compile (Hello World) and it's fine. (gcc (Ubuntu
> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>
> 4. Downloaded
> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz through wget.
>
> 5. Checked the sha1sum and it matches the sqlite page.
>
> 6. Untarred the file into it's own directory
>
> 7. cd'ed to directory and ran ./configure.
>
> 8. Checked output of configure and nothing seemed wrong. Details are
> below.
>
> 9. Ran make and get a compiler failure!  (see below). I'm gobsmacked
> that the compiler has failed to be honest. So my first assumption is
> that we have cocked up something. However we've googled and checked
> and can't see anybody with a similar issue. I suspect that one of the
> Define statements is not playing nicely but not wholly sure which one
> OR we are missing a package that needs to be installed, e.g. TCL x,y
> or z.
>
> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1  
> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  
> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD
> -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD
> -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
> gcc: internal compiler error: Killed (program cc1)
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
> Makefile:539: recipe for target 'sqlite3.lo' failed
> make: *** [sqlite3.lo] Error 1
>
> 10. I checked the Makefile but there's no obvious issue
>
> 11. We've done this three times now with the same result.
>
> 12. The fact the compiler barfs is worrying, we know how many people
> use SQLite so for this sort of error to occur is a little surprising
> and we still [hidden email] its our fault,
> but we cannot see what we have done wrong.
>
> Any help or suggestions welcomed. I have to say I am sick to the back
> teeth of reading websites that purport to tell you how to compile
> SQLite to find that it simply consists of apt-get install sqlite3 (or
> whatever). The signal to noise ration here is very, very low. We need
> a clickbait filter.
>
> Thanks
>
> Rob
> -----------------------------------------
>
>
> **Detailed summary**
>
> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
> --2018-07-09 08:28:39--
> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
> 2600:3c00::f03c:91ff:fe96:b959
> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
> connected.
> HTTP request sent, awaiting response... 200 OK
> Length: 2699252 (2.6M) [application/x-gzip]
> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>
> sqlite-autoconf-3240000.tar.gz
> 100%[========================================================================================================================================>]
>   2.57M  1.43MB/s    in 1.8s
>
> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz'
> saved [2699252/2699252]
>
> root@preprod1:/jambuster/src/sqlite# sha1sum
> sqlite-autoconf-3240000.tar.gz
> da68915e3563b5244cbcdb6c7e20fb35559bcfc6 sqlite-autoconf-3240000.tar.gz
>
> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
> --version
> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
> 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.
>
> root@preprod1:/jambuster/src/sqlite# tar tzf
> sqlite-autoconf-3240000.tar.gz
> sqlite-autoconf-3240000/
> sqlite-autoconf-3240000/compile
> sqlite-autoconf-3240000/config.guess
> sqlite-autoconf-3240000/configure
> sqlite-autoconf-3240000/sqlite3ext.h
> sqlite-autoconf-3240000/aclocal.m4
> sqlite-autoconf-3240000/install-sh
> sqlite-autoconf-3240000/depcomp
> sqlite-autoconf-3240000/sqlite3.c
> sqlite-autoconf-3240000/INSTALL
> sqlite-autoconf-3240000/sqlite3.pc.in
> sqlite-autoconf-3240000/missing
> sqlite-autoconf-3240000/Makefile.am
> sqlite-autoconf-3240000/config.sub
> sqlite-autoconf-3240000/sqlite3.h
> sqlite-autoconf-3240000/Makefile.in
> sqlite-autoconf-3240000/README.txt
> sqlite-autoconf-3240000/tea/
> sqlite-autoconf-3240000/tea/configure
> sqlite-autoconf-3240000/tea/aclocal.m4
> sqlite-autoconf-3240000/tea/README
> sqlite-autoconf-3240000/tea/tclconfig/
> sqlite-autoconf-3240000/tea/tclconfig/install-sh
> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
> sqlite-autoconf-3240000/tea/doc/
> sqlite-autoconf-3240000/tea/doc/sqlite3.n
> sqlite-autoconf-3240000/tea/Makefile.in
> sqlite-autoconf-3240000/tea/license.terms
> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
> sqlite-autoconf-3240000/tea/win/
> sqlite-autoconf-3240000/tea/win/rules.vc
> sqlite-autoconf-3240000/tea/win/makefile.vc
> sqlite-autoconf-3240000/tea/win/nmakehlp.c
> sqlite-autoconf-3240000/tea/generic/
> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
> sqlite-autoconf-3240000/tea/configure.ac
> sqlite-autoconf-3240000/shell.c
> sqlite-autoconf-3240000/Makefile.msc
> sqlite-autoconf-3240000/sqlite3.1
> sqlite-autoconf-3240000/ltmain.sh
> sqlite-autoconf-3240000/Makefile.fallback
> sqlite-autoconf-3240000/Replace.cs
> sqlite-autoconf-3240000/sqlite3.rc
> sqlite-autoconf-3240000/configure.ac
>
> root@preprod1:/jambuster/src/sqlite# tar xvfz
> sqlite-autoconf-3240000.tar.gz
> sqlite-autoconf-3240000/
> sqlite-autoconf-3240000/compile
> sqlite-autoconf-3240000/config.guess
> sqlite-autoconf-3240000/configure
> sqlite-autoconf-3240000/sqlite3ext.h
> sqlite-autoconf-3240000/aclocal.m4
> sqlite-autoconf-3240000/install-sh
> sqlite-autoconf-3240000/depcomp
> sqlite-autoconf-3240000/sqlite3.c
> sqlite-autoconf-3240000/INSTALL
> sqlite-autoconf-3240000/sqlite3.pc.in
> sqlite-autoconf-3240000/missing
> sqlite-autoconf-3240000/Makefile.am
> sqlite-autoconf-3240000/config.sub
> sqlite-autoconf-3240000/sqlite3.h
> sqlite-autoconf-3240000/Makefile.in
> sqlite-autoconf-3240000/README.txt
> sqlite-autoconf-3240000/tea/
> sqlite-autoconf-3240000/tea/configure
> sqlite-autoconf-3240000/tea/aclocal.m4
> sqlite-autoconf-3240000/tea/README
> sqlite-autoconf-3240000/tea/tclconfig/
> sqlite-autoconf-3240000/tea/tclconfig/install-sh
> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
> sqlite-autoconf-3240000/tea/doc/
> sqlite-autoconf-3240000/tea/doc/sqlite3.n
> sqlite-autoconf-3240000/tea/Makefile.in
> sqlite-autoconf-3240000/tea/license.terms
> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
> sqlite-autoconf-3240000/tea/win/
> sqlite-autoconf-3240000/tea/win/rules.vc
> sqlite-autoconf-3240000/tea/win/makefile.vc
> sqlite-autoconf-3240000/tea/win/nmakehlp.c
> sqlite-autoconf-3240000/tea/generic/
> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
> sqlite-autoconf-3240000/tea/configure.ac
> sqlite-autoconf-3240000/shell.c
> sqlite-autoconf-3240000/Makefile.msc
> sqlite-autoconf-3240000/sqlite3.1
> sqlite-autoconf-3240000/ltmain.sh
> sqlite-autoconf-3240000/Makefile.fallback
> sqlite-autoconf-3240000/Replace.cs
> sqlite-autoconf-3240000/sqlite3.rc
> sqlite-autoconf-3240000/configure.ac
>
> root@preprod1:/jambuster/src/sqlite# ls
> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>
> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
> aclocal.m4  config.guess  configure    depcomp  install-sh
> Makefile.am    Makefile.in   missing      Replace.cs  sqlite3.1
> sqlite3ext.h  sqlite3.pc.in  tea
> compile     config.sub      configure.ac    INSTALL  ltmain.sh
> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  
> sqlite3.h     sqlite3.rc
>
> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ./configure
> 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 for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether make supports nested variables... yes
> checking for style of include used by make... GNU
> 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 dependency style of gcc... gcc3
> checking for special C compiler options needed for large files... no
> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
> 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 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... 1966080
> 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 command to parse /usr/bin/nm -B output from gcc object... ok
> checking for sysroot... no
> checking for a working dd... /bin/dd
> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
> 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 fdatasync... yes
> checking for usleep... yes
> checking for fullfsync... no
> checking for localtime_r... yes
> checking for gmtime_r... yes
> checking whether strerror_r is declared... yes
> checking for strerror_r... yes
> checking whether strerror_r returns char *... no
> checking editline/readline.h usability... no
> checking editline/readline.h presence... no
> checking for editline/readline.h... no
> checking readline/readline.h usability... no
> checking readline/readline.h presence... no
> checking for readline/readline.h... no
> checking for library containing pthread_create... -lpthread
> checking for library containing pthread_mutexattr_init... none required
> checking for library containing dlopen... -ldl
> checking for whether to support dynamic extensions... yes
> checking for library containing log... -lm
> checking for posix_fallocate... yes
> checking zlib.h usability... yes
> checking zlib.h presence... yes
> checking for zlib.h... yes
> checking for library containing deflate... -lz
> checking for library containing system... none required
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating sqlite3.pc
> config.status: executing depfiles commands
> config.status: executing libtool commands
>
> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1  
> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  
> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD
> -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD
> -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
> gcc: internal compiler error: Killed (program cc1)
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
> Makefile:539: recipe for target 'sqlite3.lo' failed
> make: *** [sqlite3.lo] Error 1
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Rob Willett
Dan,

Thanks for the information. We did try that first, failed and just
assumed we were idiots and went to the the other download.

Just downloaded it again, so we can check and be on the safe side, and
we get the same issue.

cp /jambuster/src/sqlite-src-3240000/ext/session/sqlite3session.h .
./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
-I/jambuster/src/sqlite-src-3240000/src
-I/jambuster/src/sqlite-src-3240000/ext/rtree
-I/jambuster/src/sqlite-src-3240000/ext/icu
-I/jambuster/src/sqlite-src-3240000/ext/fts3
-I/jambuster/src/sqlite-src-3240000/ext/async
-I/jambuster/src/sqlite-src-3240000/ext/session -D_HAVE_SQLITE_CONFIG_H
-DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1  
-DSQLITE_HAVE_ZLIB=1  -DSQLITE_TEMP_STORE=1 -c sqlite3.c
libtool: compile:  gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
-I/jambuster/src/sqlite-src-3240000/src
-I/jambuster/src/sqlite-src-3240000/ext/rtree
-I/jambuster/src/sqlite-src-3240000/ext/icu
-I/jambuster/src/sqlite-src-3240000/ext/fts3
-I/jambuster/src/sqlite-src-3240000/ext/async
-I/jambuster/src/sqlite-src-3240000/ext/session -D_HAVE_SQLITE_CONFIG_H
-DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1
-DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c  -fPIC -DPIC -o
.libs/sqlite3.o
gcc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
Makefile:715: recipe for target 'sqlite3.lo' failed

./configure seems OK, tcl looks OK (which was our worry), we think there
is a genuine bug in the compiler. <sigh>. We still need the sql_analyzer
program as well :) Its one of those days, I have bad compilers and the
UK government could fall.

Rob

On 9 Jul 2018, at 15:02, Dan Kennedy wrote:

> On 07/09/2018 03:56 PM, [hidden email] wrote:
>> Hi
>>
>> I'm trying to build the SQLite packages from the source. I **only**
>> want it to get a copy of sqlite_analyse which for some reason doesn't
>> appear to be easily available as a compiled option. The download
>> package doesn't work on Ubuntu 16.04 and as far as we can see, there
>> are no other downloadable binaries that don't come from China. For
>> some reason, I don't really want to download something from
>> Beijing....
>
> The Linux binaries on sqlite.org are for 32-bit systems. For them to
> work on Ubuntu 16.04, you probably need to install multiarch support.
>
> Or, to build sqlite3_analyzer from source you need the full source
> distribution:
>
>   https://www.sqlite.org/2018/sqlite-src-3240000.zip
>
> Dan.
>
>
>
>>
>> The full steps I followed are at the very bottom of this e-mail. They
>> are a direct copy from my terminal output.
>>
>> **TLDR Summary**
>>
>> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
>> running under OpenVZ on a commercial ISP. It's patched to the current
>> levels. I don't think this is a problem as we don't have any other
>> issues but...
>>
>> 2. SQLite3 is already installed as the normal (and older) SQLIte that
>> is distributed with Ubuntu 16.04 LTS
>>
>> 3. gcc is installed. I have created a small C program to test that it
>> can compile (Hello World) and it's fine. (gcc (Ubuntu
>> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>>
>> 4. Downloaded
>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz through
>> wget.
>>
>> 5. Checked the sha1sum and it matches the sqlite page.
>>
>> 6. Untarred the file into it's own directory
>>
>> 7. cd'ed to directory and ran ./configure.
>>
>> 8. Checked output of configure and nothing seemed wrong. Details are
>> below.
>>
>> 9. Ran make and get a compiler failure!  (see below). I'm gobsmacked
>> that the compiler has failed to be honest. So my first assumption is
>> that we have cocked up something. However we've googled and checked
>> and can't see anybody with a similar issue. I suspect that one of the
>> Define statements is not playing nicely but not wholly sure which one
>> OR we are missing a package that needs to be installed, e.g. TCL x,y
>> or z.
>>
>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1  
>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  
>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD
>> -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD
>> -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>> gcc: internal compiler error: Killed (program cc1)
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>> Makefile:539: recipe for target 'sqlite3.lo' failed
>> make: *** [sqlite3.lo] Error 1
>>
>> 10. I checked the Makefile but there's no obvious issue
>>
>> 11. We've done this three times now with the same result.
>>
>> 12. The fact the compiler barfs is worrying, we know how many people
>> use SQLite so for this sort of error to occur is a little surprising
>> and we still [hidden email] its our fault,
>> but we cannot see what we have done wrong.
>>
>> Any help or suggestions welcomed. I have to say I am sick to the back
>> teeth of reading websites that purport to tell you how to compile
>> SQLite to find that it simply consists of apt-get install sqlite3 (or
>> whatever). The signal to noise ration here is very, very low. We need
>> a clickbait filter.
>>
>> Thanks
>>
>> Rob
>> -----------------------------------------
>>
>>
>> **Detailed summary**
>>
>> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>> --2018-07-09 08:28:39--
>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
>> 2600:3c00::f03c:91ff:fe96:b959
>> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
>> connected.
>> HTTP request sent, awaiting response... 200 OK
>> Length: 2699252 (2.6M) [application/x-gzip]
>> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>>
>> sqlite-autoconf-3240000.tar.gz
>> 100%[========================================================================================================================================>]
>>   2.57M  1.43MB/s    in 1.8s
>>
>> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz'
>> saved [2699252/2699252]
>>
>> root@preprod1:/jambuster/src/sqlite# sha1sum
>> sqlite-autoconf-3240000.tar.gz
>> da68915e3563b5244cbcdb6c7e20fb35559bcfc6
>> sqlite-autoconf-3240000.tar.gz
>>
>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
>> --version
>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>> 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.
>>
>> root@preprod1:/jambuster/src/sqlite# tar tzf
>> sqlite-autoconf-3240000.tar.gz
>> sqlite-autoconf-3240000/
>> sqlite-autoconf-3240000/compile
>> sqlite-autoconf-3240000/config.guess
>> sqlite-autoconf-3240000/configure
>> sqlite-autoconf-3240000/sqlite3ext.h
>> sqlite-autoconf-3240000/aclocal.m4
>> sqlite-autoconf-3240000/install-sh
>> sqlite-autoconf-3240000/depcomp
>> sqlite-autoconf-3240000/sqlite3.c
>> sqlite-autoconf-3240000/INSTALL
>> sqlite-autoconf-3240000/sqlite3.pc.in
>> sqlite-autoconf-3240000/missing
>> sqlite-autoconf-3240000/Makefile.am
>> sqlite-autoconf-3240000/config.sub
>> sqlite-autoconf-3240000/sqlite3.h
>> sqlite-autoconf-3240000/Makefile.in
>> sqlite-autoconf-3240000/README.txt
>> sqlite-autoconf-3240000/tea/
>> sqlite-autoconf-3240000/tea/configure
>> sqlite-autoconf-3240000/tea/aclocal.m4
>> sqlite-autoconf-3240000/tea/README
>> sqlite-autoconf-3240000/tea/tclconfig/
>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>> sqlite-autoconf-3240000/tea/doc/
>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>> sqlite-autoconf-3240000/tea/Makefile.in
>> sqlite-autoconf-3240000/tea/license.terms
>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>> sqlite-autoconf-3240000/tea/win/
>> sqlite-autoconf-3240000/tea/win/rules.vc
>> sqlite-autoconf-3240000/tea/win/makefile.vc
>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>> sqlite-autoconf-3240000/tea/generic/
>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>> sqlite-autoconf-3240000/tea/configure.ac
>> sqlite-autoconf-3240000/shell.c
>> sqlite-autoconf-3240000/Makefile.msc
>> sqlite-autoconf-3240000/sqlite3.1
>> sqlite-autoconf-3240000/ltmain.sh
>> sqlite-autoconf-3240000/Makefile.fallback
>> sqlite-autoconf-3240000/Replace.cs
>> sqlite-autoconf-3240000/sqlite3.rc
>> sqlite-autoconf-3240000/configure.ac
>>
>> root@preprod1:/jambuster/src/sqlite# tar xvfz
>> sqlite-autoconf-3240000.tar.gz
>> sqlite-autoconf-3240000/
>> sqlite-autoconf-3240000/compile
>> sqlite-autoconf-3240000/config.guess
>> sqlite-autoconf-3240000/configure
>> sqlite-autoconf-3240000/sqlite3ext.h
>> sqlite-autoconf-3240000/aclocal.m4
>> sqlite-autoconf-3240000/install-sh
>> sqlite-autoconf-3240000/depcomp
>> sqlite-autoconf-3240000/sqlite3.c
>> sqlite-autoconf-3240000/INSTALL
>> sqlite-autoconf-3240000/sqlite3.pc.in
>> sqlite-autoconf-3240000/missing
>> sqlite-autoconf-3240000/Makefile.am
>> sqlite-autoconf-3240000/config.sub
>> sqlite-autoconf-3240000/sqlite3.h
>> sqlite-autoconf-3240000/Makefile.in
>> sqlite-autoconf-3240000/README.txt
>> sqlite-autoconf-3240000/tea/
>> sqlite-autoconf-3240000/tea/configure
>> sqlite-autoconf-3240000/tea/aclocal.m4
>> sqlite-autoconf-3240000/tea/README
>> sqlite-autoconf-3240000/tea/tclconfig/
>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>> sqlite-autoconf-3240000/tea/doc/
>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>> sqlite-autoconf-3240000/tea/Makefile.in
>> sqlite-autoconf-3240000/tea/license.terms
>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>> sqlite-autoconf-3240000/tea/win/
>> sqlite-autoconf-3240000/tea/win/rules.vc
>> sqlite-autoconf-3240000/tea/win/makefile.vc
>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>> sqlite-autoconf-3240000/tea/generic/
>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>> sqlite-autoconf-3240000/tea/configure.ac
>> sqlite-autoconf-3240000/shell.c
>> sqlite-autoconf-3240000/Makefile.msc
>> sqlite-autoconf-3240000/sqlite3.1
>> sqlite-autoconf-3240000/ltmain.sh
>> sqlite-autoconf-3240000/Makefile.fallback
>> sqlite-autoconf-3240000/Replace.cs
>> sqlite-autoconf-3240000/sqlite3.rc
>> sqlite-autoconf-3240000/configure.ac
>>
>> root@preprod1:/jambuster/src/sqlite# ls
>> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
>> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>>
>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
>> aclocal.m4  config.guess  configure    depcomp  install-sh
>> Makefile.am    Makefile.in   missing      Replace.cs  sqlite3.1
>> sqlite3ext.h  sqlite3.pc.in  tea
>> compile     config.sub      configure.ac    INSTALL  ltmain.sh
>> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  
>> sqlite3.h     sqlite3.rc
>>
>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000#
>> ./configure
>> 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 for gawk... gawk
>> checking whether make sets $(MAKE)... yes
>> checking whether make supports nested variables... yes
>> checking for style of include used by make... GNU
>> 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 dependency style of gcc... gcc3
>> checking for special C compiler options needed for large files... no
>> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
>> 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 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... 1966080
>> 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 command to parse /usr/bin/nm -B output from gcc object... ok
>> checking for sysroot... no
>> checking for a working dd... /bin/dd
>> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
>> 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 fdatasync... yes
>> checking for usleep... yes
>> checking for fullfsync... no
>> checking for localtime_r... yes
>> checking for gmtime_r... yes
>> checking whether strerror_r is declared... yes
>> checking for strerror_r... yes
>> checking whether strerror_r returns char *... no
>> checking editline/readline.h usability... no
>> checking editline/readline.h presence... no
>> checking for editline/readline.h... no
>> checking readline/readline.h usability... no
>> checking readline/readline.h presence... no
>> checking for readline/readline.h... no
>> checking for library containing pthread_create... -lpthread
>> checking for library containing pthread_mutexattr_init... none
>> required
>> checking for library containing dlopen... -ldl
>> checking for whether to support dynamic extensions... yes
>> checking for library containing log... -lm
>> checking for posix_fallocate... yes
>> checking zlib.h usability... yes
>> checking zlib.h presence... yes
>> checking for zlib.h... yes
>> checking for library containing deflate... -lz
>> checking for library containing system... none required
>> checking that generated files are newer than configure... done
>> configure: creating ./config.status
>> config.status: creating Makefile
>> config.status: creating sqlite3.pc
>> config.status: executing depfiles commands
>> config.status: executing libtool commands
>>
>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1  
>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB  
>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD
>> -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD
>> -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>> gcc: internal compiler error: Killed (program cc1)
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>> Makefile:539: recipe for target 'sqlite3.lo' failed
>> make: *** [sqlite3.lo] Error 1
>> _______________________________________________
>> sqlite-users mailing list
>> [hidden email]
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
>
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Dan Kennedy-4
On 07/09/2018 09:26 PM, Rob Willett wrote:

> Dan,
>
> Thanks for the information. We did try that first, failed and just
> assumed we were idiots and went to the the other download.
>
> Just downloaded it again, so we can check and be on the safe side, and
> we get the same issue.
>
> cp /jambuster/src/sqlite-src-3240000/ext/session/sqlite3session.h .
> ./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
> -I/jambuster/src/sqlite-src-3240000/src
> -I/jambuster/src/sqlite-src-3240000/ext/rtree
> -I/jambuster/src/sqlite-src-3240000/ext/icu
> -I/jambuster/src/sqlite-src-3240000/ext/fts3
> -I/jambuster/src/sqlite-src-3240000/ext/async
> -I/jambuster/src/sqlite-src-3240000/ext/session
> -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6
> -DSQLITE_THREADSAFE=1 -DSQLITE_HAVE_ZLIB=1  -DSQLITE_TEMP_STORE=1 -c
> sqlite3.c
> libtool: compile:  gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
> -I/jambuster/src/sqlite-src-3240000/src
> -I/jambuster/src/sqlite-src-3240000/ext/rtree
> -I/jambuster/src/sqlite-src-3240000/ext/icu
> -I/jambuster/src/sqlite-src-3240000/ext/fts3
> -I/jambuster/src/sqlite-src-3240000/ext/async
> -I/jambuster/src/sqlite-src-3240000/ext/session
> -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6
> -DSQLITE_THREADSAFE=1 -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c
> sqlite3.c  -fPIC -DPIC -o .libs/sqlite3.o
> gcc: internal compiler error: Killed (program cc1)
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
> Makefile:715: recipe for target 'sqlite3.lo' failed
>
> ./configure seems OK, tcl looks OK (which was our worry), we think
> there is a genuine bug in the compiler. <sigh>. We still need the
> sql_analyzer program as well :) Its one of those days, I have bad
> compilers and the UK government could fall.


After running [./configure], open the generated Makefile and remove all
the "-O2" switches you can find. Then run [make sqlite3_analyzer].

You'll get an un-optimized binary of course, but there's a good chance
this will bypass the compiler bug. And it won't make much difference
unless your databases are really big.

Dan.






>
> Rob
>
> On 9 Jul 2018, at 15:02, Dan Kennedy wrote:
>
>> On 07/09/2018 03:56 PM, [hidden email] wrote:
>>> Hi
>>>
>>> I'm trying to build the SQLite packages from the source. I **only**
>>> want it to get a copy of sqlite_analyse which for some reason
>>> doesn't appear to be easily available as a compiled option. The
>>> download package doesn't work on Ubuntu 16.04 and as far as we can
>>> see, there are no other downloadable binaries that don't come from
>>> China. For some reason, I don't really want to download something
>>> from Beijing....
>>
>> The Linux binaries on sqlite.org are for 32-bit systems. For them to
>> work on Ubuntu 16.04, you probably need to install multiarch support.
>>
>> Or, to build sqlite3_analyzer from source you need the full source
>> distribution:
>>
>>   https://www.sqlite.org/2018/sqlite-src-3240000.zip
>>
>> Dan.
>>
>>
>>
>>>
>>> The full steps I followed are at the very bottom of this e-mail.
>>> They are a direct copy from my terminal output.
>>>
>>> **TLDR Summary**
>>>
>>> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
>>> running under OpenVZ on a commercial ISP. It's patched to the
>>> current levels. I don't think this is a problem as we don't have any
>>> other issues but...
>>>
>>> 2. SQLite3 is already installed as the normal (and older) SQLIte
>>> that is distributed with Ubuntu 16.04 LTS
>>>
>>> 3. gcc is installed. I have created a small C program to test that
>>> it can compile (Hello World) and it's fine. (gcc (Ubuntu
>>> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>>>
>>> 4. Downloaded
>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz through
>>> wget.
>>>
>>> 5. Checked the sha1sum and it matches the sqlite page.
>>>
>>> 6. Untarred the file into it's own directory
>>>
>>> 7. cd'ed to directory and ran ./configure.
>>>
>>> 8. Checked output of configure and nothing seemed wrong. Details are
>>> below.
>>>
>>> 9. Ran make and get a compiler failure!  (see below). I'm gobsmacked
>>> that the compiler has failed to be honest. So my first assumption is
>>> that we have cocked up something. However we've googled and checked
>>> and can't see anybody with a similar issue. I suspect that one of
>>> the Define statements is not playing nicely but not wholly sure
>>> which one OR we are missing a package that needs to be installed,
>>> e.g. TCL x,y or z.
>>>
>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1
>>> -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>> -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g
>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo
>>> sqlite3.c
>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1
>>> -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>> -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2
>>> -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC
>>> -DPIC -o .libs/sqlite3.o
>>> gcc: internal compiler error: Killed (program cc1)
>>> Please submit a full bug report,
>>> with preprocessed source if appropriate.
>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>> make: *** [sqlite3.lo] Error 1
>>>
>>> 10. I checked the Makefile but there's no obvious issue
>>>
>>> 11. We've done this three times now with the same result.
>>>
>>> 12. The fact the compiler barfs is worrying, we know how many people
>>> use SQLite so for this sort of error to occur is a little surprising
>>> and we still [hidden email] its our
>>> fault, but we cannot see what we have done wrong.
>>>
>>> Any help or suggestions welcomed. I have to say I am sick to the
>>> back teeth of reading websites that purport to tell you how to
>>> compile SQLite to find that it simply consists of apt-get install
>>> sqlite3 (or whatever). The signal to noise ration here is very, very
>>> low. We need a clickbait filter.
>>>
>>> Thanks
>>>
>>> Rob
>>> -----------------------------------------
>>>
>>>
>>> **Detailed summary**
>>>
>>> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>> --2018-07-09 08:28:39--
>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
>>> 2600:3c00::f03c:91ff:fe96:b959
>>> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
>>> connected.
>>> HTTP request sent, awaiting response... 200 OK
>>> Length: 2699252 (2.6M) [application/x-gzip]
>>> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>>>
>>> sqlite-autoconf-3240000.tar.gz
>>> 100%[========================================================================================================================================>]
>>>   2.57M  1.43MB/s    in 1.8s
>>>
>>> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz'
>>> saved [2699252/2699252]
>>>
>>> root@preprod1:/jambuster/src/sqlite# sha1sum
>>> sqlite-autoconf-3240000.tar.gz
>>> da68915e3563b5244cbcdb6c7e20fb35559bcfc6 sqlite-autoconf-3240000.tar.gz
>>>
>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
>>> --version
>>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>>> 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.
>>>
>>> root@preprod1:/jambuster/src/sqlite# tar tzf
>>> sqlite-autoconf-3240000.tar.gz
>>> sqlite-autoconf-3240000/
>>> sqlite-autoconf-3240000/compile
>>> sqlite-autoconf-3240000/config.guess
>>> sqlite-autoconf-3240000/configure
>>> sqlite-autoconf-3240000/sqlite3ext.h
>>> sqlite-autoconf-3240000/aclocal.m4
>>> sqlite-autoconf-3240000/install-sh
>>> sqlite-autoconf-3240000/depcomp
>>> sqlite-autoconf-3240000/sqlite3.c
>>> sqlite-autoconf-3240000/INSTALL
>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>> sqlite-autoconf-3240000/missing
>>> sqlite-autoconf-3240000/Makefile.am
>>> sqlite-autoconf-3240000/config.sub
>>> sqlite-autoconf-3240000/sqlite3.h
>>> sqlite-autoconf-3240000/Makefile.in
>>> sqlite-autoconf-3240000/README.txt
>>> sqlite-autoconf-3240000/tea/
>>> sqlite-autoconf-3240000/tea/configure
>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>> sqlite-autoconf-3240000/tea/README
>>> sqlite-autoconf-3240000/tea/tclconfig/
>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>> sqlite-autoconf-3240000/tea/doc/
>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>> sqlite-autoconf-3240000/tea/Makefile.in
>>> sqlite-autoconf-3240000/tea/license.terms
>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>> sqlite-autoconf-3240000/tea/win/
>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>> sqlite-autoconf-3240000/tea/generic/
>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>> sqlite-autoconf-3240000/tea/configure.ac
>>> sqlite-autoconf-3240000/shell.c
>>> sqlite-autoconf-3240000/Makefile.msc
>>> sqlite-autoconf-3240000/sqlite3.1
>>> sqlite-autoconf-3240000/ltmain.sh
>>> sqlite-autoconf-3240000/Makefile.fallback
>>> sqlite-autoconf-3240000/Replace.cs
>>> sqlite-autoconf-3240000/sqlite3.rc
>>> sqlite-autoconf-3240000/configure.ac
>>>
>>> root@preprod1:/jambuster/src/sqlite# tar xvfz
>>> sqlite-autoconf-3240000.tar.gz
>>> sqlite-autoconf-3240000/
>>> sqlite-autoconf-3240000/compile
>>> sqlite-autoconf-3240000/config.guess
>>> sqlite-autoconf-3240000/configure
>>> sqlite-autoconf-3240000/sqlite3ext.h
>>> sqlite-autoconf-3240000/aclocal.m4
>>> sqlite-autoconf-3240000/install-sh
>>> sqlite-autoconf-3240000/depcomp
>>> sqlite-autoconf-3240000/sqlite3.c
>>> sqlite-autoconf-3240000/INSTALL
>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>> sqlite-autoconf-3240000/missing
>>> sqlite-autoconf-3240000/Makefile.am
>>> sqlite-autoconf-3240000/config.sub
>>> sqlite-autoconf-3240000/sqlite3.h
>>> sqlite-autoconf-3240000/Makefile.in
>>> sqlite-autoconf-3240000/README.txt
>>> sqlite-autoconf-3240000/tea/
>>> sqlite-autoconf-3240000/tea/configure
>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>> sqlite-autoconf-3240000/tea/README
>>> sqlite-autoconf-3240000/tea/tclconfig/
>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>> sqlite-autoconf-3240000/tea/doc/
>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>> sqlite-autoconf-3240000/tea/Makefile.in
>>> sqlite-autoconf-3240000/tea/license.terms
>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>> sqlite-autoconf-3240000/tea/win/
>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>> sqlite-autoconf-3240000/tea/generic/
>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>> sqlite-autoconf-3240000/tea/configure.ac
>>> sqlite-autoconf-3240000/shell.c
>>> sqlite-autoconf-3240000/Makefile.msc
>>> sqlite-autoconf-3240000/sqlite3.1
>>> sqlite-autoconf-3240000/ltmain.sh
>>> sqlite-autoconf-3240000/Makefile.fallback
>>> sqlite-autoconf-3240000/Replace.cs
>>> sqlite-autoconf-3240000/sqlite3.rc
>>> sqlite-autoconf-3240000/configure.ac
>>>
>>> root@preprod1:/jambuster/src/sqlite# ls
>>> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
>>> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>>>
>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
>>> aclocal.m4  config.guess  configure    depcomp  install-sh
>>> Makefile.am    Makefile.in   missing      Replace.cs sqlite3.1
>>> sqlite3ext.h  sqlite3.pc.in  tea
>>> compile     config.sub      configure.ac    INSTALL  ltmain.sh
>>> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  
>>> sqlite3.h     sqlite3.rc
>>>
>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000#
>>> ./configure
>>> 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 for gawk... gawk
>>> checking whether make sets $(MAKE)... yes
>>> checking whether make supports nested variables... yes
>>> checking for style of include used by make... GNU
>>> 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 dependency style of gcc... gcc3
>>> checking for special C compiler options needed for large files... no
>>> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
>>> 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 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... 1966080
>>> 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 command to parse /usr/bin/nm -B output from gcc object... ok
>>> checking for sysroot... no
>>> checking for a working dd... /bin/dd
>>> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
>>> 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 fdatasync... yes
>>> checking for usleep... yes
>>> checking for fullfsync... no
>>> checking for localtime_r... yes
>>> checking for gmtime_r... yes
>>> checking whether strerror_r is declared... yes
>>> checking for strerror_r... yes
>>> checking whether strerror_r returns char *... no
>>> checking editline/readline.h usability... no
>>> checking editline/readline.h presence... no
>>> checking for editline/readline.h... no
>>> checking readline/readline.h usability... no
>>> checking readline/readline.h presence... no
>>> checking for readline/readline.h... no
>>> checking for library containing pthread_create... -lpthread
>>> checking for library containing pthread_mutexattr_init... none required
>>> checking for library containing dlopen... -ldl
>>> checking for whether to support dynamic extensions... yes
>>> checking for library containing log... -lm
>>> checking for posix_fallocate... yes
>>> checking zlib.h usability... yes
>>> checking zlib.h presence... yes
>>> checking for zlib.h... yes
>>> checking for library containing deflate... -lz
>>> checking for library containing system... none required
>>> checking that generated files are newer than configure... done
>>> configure: creating ./config.status
>>> config.status: creating Makefile
>>> config.status: creating sqlite3.pc
>>> config.status: executing depfiles commands
>>> config.status: executing libtool commands
>>>
>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1
>>> -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>> -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g
>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo
>>> sqlite3.c
>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1
>>> -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>> -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2
>>> -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC
>>> -DPIC -o .libs/sqlite3.o
>>> gcc: internal compiler error: Killed (program cc1)
>>> Please submit a full bug report,
>>> with preprocessed source if appropriate.
>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>> make: *** [sqlite3.lo] Error 1
>>> _______________________________________________
>>> sqlite-users mailing list
>>> [hidden email]
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>
>>
>> _______________________________________________
>> sqlite-users mailing list
>> [hidden email]
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

David Burgess-2
I'm using gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609

on 64 bit.

I have built both 64 and 32 bit versions from sqlite-src-3240000
No problems.

Check your build-essential install?

On Tue, Jul 10, 2018 at 1:05 AM, Dan Kennedy <[hidden email]> wrote:

> On 07/09/2018 09:26 PM, Rob Willett wrote:
>>
>> Dan,
>>
>> Thanks for the information. We did try that first, failed and just assumed
>> we were idiots and went to the the other download.
>>
>> Just downloaded it again, so we can check and be on the safe side, and we
>> get the same issue.
>>
>> cp /jambuster/src/sqlite-src-3240000/ext/session/sqlite3session.h .
>> ./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>> -I/jambuster/src/sqlite-src-3240000/src
>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>> -I/jambuster/src/sqlite-src-3240000/ext/async
>> -I/jambuster/src/sqlite-src-3240000/ext/session -D_HAVE_SQLITE_CONFIG_H
>> -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1
>> -DSQLITE_HAVE_ZLIB=1  -DSQLITE_TEMP_STORE=1 -c sqlite3.c
>> libtool: compile:  gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>> -I/jambuster/src/sqlite-src-3240000/src
>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>> -I/jambuster/src/sqlite-src-3240000/ext/async
>> -I/jambuster/src/sqlite-src-3240000/ext/session -D_HAVE_SQLITE_CONFIG_H
>> -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1
>> -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c  -fPIC -DPIC -o
>> .libs/sqlite3.o
>> gcc: internal compiler error: Killed (program cc1)
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>> Makefile:715: recipe for target 'sqlite3.lo' failed
>>
>> ./configure seems OK, tcl looks OK (which was our worry), we think there
>> is a genuine bug in the compiler. <sigh>. We still need the sql_analyzer
>> program as well :) Its one of those days, I have bad compilers and the UK
>> government could fall.
>
>
>
> After running [./configure], open the generated Makefile and remove all the
> "-O2" switches you can find. Then run [make sqlite3_analyzer].
>
> You'll get an un-optimized binary of course, but there's a good chance this
> will bypass the compiler bug. And it won't make much difference unless your
> databases are really big.
>
> Dan.
>
>
>
>
>
>
>
>>
>> Rob
>>
>> On 9 Jul 2018, at 15:02, Dan Kennedy wrote:
>>
>>> On 07/09/2018 03:56 PM, [hidden email] wrote:
>>>>
>>>> Hi
>>>>
>>>> I'm trying to build the SQLite packages from the source. I **only** want
>>>> it to get a copy of sqlite_analyse which for some reason doesn't appear to
>>>> be easily available as a compiled option. The download package doesn't work
>>>> on Ubuntu 16.04 and as far as we can see, there are no other downloadable
>>>> binaries that don't come from China. For some reason, I don't really want to
>>>> download something from Beijing....
>>>
>>>
>>> The Linux binaries on sqlite.org are for 32-bit systems. For them to work
>>> on Ubuntu 16.04, you probably need to install multiarch support.
>>>
>>> Or, to build sqlite3_analyzer from source you need the full source
>>> distribution:
>>>
>>>   https://www.sqlite.org/2018/sqlite-src-3240000.zip
>>>
>>> Dan.
>>>
>>>
>>>
>>>>
>>>> The full steps I followed are at the very bottom of this e-mail. They
>>>> are a direct copy from my terminal output.
>>>>
>>>> **TLDR Summary**
>>>>
>>>> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
>>>> running under OpenVZ on a commercial ISP. It's patched to the current
>>>> levels. I don't think this is a problem as we don't have any other issues
>>>> but...
>>>>
>>>> 2. SQLite3 is already installed as the normal (and older) SQLIte that is
>>>> distributed with Ubuntu 16.04 LTS
>>>>
>>>> 3. gcc is installed. I have created a small C program to test that it
>>>> can compile (Hello World) and it's fine. (gcc (Ubuntu
>>>> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>>>>
>>>> 4. Downloaded https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>> through wget.
>>>>
>>>> 5. Checked the sha1sum and it matches the sqlite page.
>>>>
>>>> 6. Untarred the file into it's own directory
>>>>
>>>> 7. cd'ed to directory and ran ./configure.
>>>>
>>>> 8. Checked output of configure and nothing seemed wrong. Details are
>>>> below.
>>>>
>>>> 9. Ran make and get a compiler failure!  (see below). I'm gobsmacked
>>>> that the compiler has failed to be honest. So my first assumption is that we
>>>> have cocked up something. However we've googled and checked and can't see
>>>> anybody with a similar issue. I suspect that one of the Define statements is
>>>> not playing nicely but not wholly sure which one OR we are missing a package
>>>> that needs to be installed, e.g. TCL x,y or z.
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>>>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD -MP
>>>> -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>>>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF
>>>> .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>>>> gcc: internal compiler error: Killed (program cc1)
>>>> Please submit a full bug report,
>>>> with preprocessed source if appropriate.
>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>> make: *** [sqlite3.lo] Error 1
>>>>
>>>> 10. I checked the Makefile but there's no obvious issue
>>>>
>>>> 11. We've done this three times now with the same result.
>>>>
>>>> 12. The fact the compiler barfs is worrying, we know how many people use
>>>> SQLite so for this sort of error to occur is a little surprising and we
>>>> still [hidden email] its our fault, but we cannot
>>>> see what we have done wrong.
>>>>
>>>> Any help or suggestions welcomed. I have to say I am sick to the back
>>>> teeth of reading websites that purport to tell you how to compile SQLite to
>>>> find that it simply consists of apt-get install sqlite3 (or whatever). The
>>>> signal to noise ration here is very, very low. We need a clickbait filter.
>>>>
>>>> Thanks
>>>>
>>>> Rob
>>>> -----------------------------------------
>>>>
>>>>
>>>> **Detailed summary**
>>>>
>>>> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>> --2018-07-09 08:28:39--
>>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
>>>> 2600:3c00::f03c:91ff:fe96:b959
>>>> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
>>>> connected.
>>>> HTTP request sent, awaiting response... 200 OK
>>>> Length: 2699252 (2.6M) [application/x-gzip]
>>>> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>>>>
>>>> sqlite-autoconf-3240000.tar.gz
>>>> 100%[========================================================================================================================================>]
>>>> 2.57M  1.43MB/s    in 1.8s
>>>>
>>>> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz' saved
>>>> [2699252/2699252]
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# sha1sum
>>>> sqlite-autoconf-3240000.tar.gz
>>>> da68915e3563b5244cbcdb6c7e20fb35559bcfc6 sqlite-autoconf-3240000.tar.gz
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
>>>> --version
>>>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>>>> 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.
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# tar tzf
>>>> sqlite-autoconf-3240000.tar.gz
>>>> sqlite-autoconf-3240000/
>>>> sqlite-autoconf-3240000/compile
>>>> sqlite-autoconf-3240000/config.guess
>>>> sqlite-autoconf-3240000/configure
>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>> sqlite-autoconf-3240000/aclocal.m4
>>>> sqlite-autoconf-3240000/install-sh
>>>> sqlite-autoconf-3240000/depcomp
>>>> sqlite-autoconf-3240000/sqlite3.c
>>>> sqlite-autoconf-3240000/INSTALL
>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>> sqlite-autoconf-3240000/missing
>>>> sqlite-autoconf-3240000/Makefile.am
>>>> sqlite-autoconf-3240000/config.sub
>>>> sqlite-autoconf-3240000/sqlite3.h
>>>> sqlite-autoconf-3240000/Makefile.in
>>>> sqlite-autoconf-3240000/README.txt
>>>> sqlite-autoconf-3240000/tea/
>>>> sqlite-autoconf-3240000/tea/configure
>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>> sqlite-autoconf-3240000/tea/README
>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>> sqlite-autoconf-3240000/tea/doc/
>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>> sqlite-autoconf-3240000/tea/license.terms
>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>> sqlite-autoconf-3240000/tea/win/
>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>> sqlite-autoconf-3240000/tea/generic/
>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>> sqlite-autoconf-3240000/shell.c
>>>> sqlite-autoconf-3240000/Makefile.msc
>>>> sqlite-autoconf-3240000/sqlite3.1
>>>> sqlite-autoconf-3240000/ltmain.sh
>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>> sqlite-autoconf-3240000/Replace.cs
>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>> sqlite-autoconf-3240000/configure.ac
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# tar xvfz
>>>> sqlite-autoconf-3240000.tar.gz
>>>> sqlite-autoconf-3240000/
>>>> sqlite-autoconf-3240000/compile
>>>> sqlite-autoconf-3240000/config.guess
>>>> sqlite-autoconf-3240000/configure
>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>> sqlite-autoconf-3240000/aclocal.m4
>>>> sqlite-autoconf-3240000/install-sh
>>>> sqlite-autoconf-3240000/depcomp
>>>> sqlite-autoconf-3240000/sqlite3.c
>>>> sqlite-autoconf-3240000/INSTALL
>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>> sqlite-autoconf-3240000/missing
>>>> sqlite-autoconf-3240000/Makefile.am
>>>> sqlite-autoconf-3240000/config.sub
>>>> sqlite-autoconf-3240000/sqlite3.h
>>>> sqlite-autoconf-3240000/Makefile.in
>>>> sqlite-autoconf-3240000/README.txt
>>>> sqlite-autoconf-3240000/tea/
>>>> sqlite-autoconf-3240000/tea/configure
>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>> sqlite-autoconf-3240000/tea/README
>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>> sqlite-autoconf-3240000/tea/doc/
>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>> sqlite-autoconf-3240000/tea/license.terms
>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>> sqlite-autoconf-3240000/tea/win/
>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>> sqlite-autoconf-3240000/tea/generic/
>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>> sqlite-autoconf-3240000/shell.c
>>>> sqlite-autoconf-3240000/Makefile.msc
>>>> sqlite-autoconf-3240000/sqlite3.1
>>>> sqlite-autoconf-3240000/ltmain.sh
>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>> sqlite-autoconf-3240000/Replace.cs
>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>> sqlite-autoconf-3240000/configure.ac
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# ls
>>>> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
>>>> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
>>>> aclocal.m4  config.guess  configure    depcomp  install-sh Makefile.am
>>>> Makefile.in   missing      Replace.cs sqlite3.1 sqlite3ext.h  sqlite3.pc.in
>>>> tea
>>>> compile     config.sub      configure.ac    INSTALL  ltmain.sh
>>>> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  sqlite3.h
>>>> sqlite3.rc
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ./configure
>>>> 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 for gawk... gawk
>>>> checking whether make sets $(MAKE)... yes
>>>> checking whether make supports nested variables... yes
>>>> checking for style of include used by make... GNU
>>>> 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 dependency style of gcc... gcc3
>>>> checking for special C compiler options needed for large files... no
>>>> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
>>>> 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 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... 1966080
>>>> 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 command to parse /usr/bin/nm -B output from gcc object... ok
>>>> checking for sysroot... no
>>>> checking for a working dd... /bin/dd
>>>> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
>>>> 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 fdatasync... yes
>>>> checking for usleep... yes
>>>> checking for fullfsync... no
>>>> checking for localtime_r... yes
>>>> checking for gmtime_r... yes
>>>> checking whether strerror_r is declared... yes
>>>> checking for strerror_r... yes
>>>> checking whether strerror_r returns char *... no
>>>> checking editline/readline.h usability... no
>>>> checking editline/readline.h presence... no
>>>> checking for editline/readline.h... no
>>>> checking readline/readline.h usability... no
>>>> checking readline/readline.h presence... no
>>>> checking for readline/readline.h... no
>>>> checking for library containing pthread_create... -lpthread
>>>> checking for library containing pthread_mutexattr_init... none required
>>>> checking for library containing dlopen... -ldl
>>>> checking for whether to support dynamic extensions... yes
>>>> checking for library containing log... -lm
>>>> checking for posix_fallocate... yes
>>>> checking zlib.h usability... yes
>>>> checking zlib.h presence... yes
>>>> checking for zlib.h... yes
>>>> checking for library containing deflate... -lz
>>>> checking for library containing system... none required
>>>> checking that generated files are newer than configure... done
>>>> configure: creating ./config.status
>>>> config.status: creating Makefile
>>>> config.status: creating sqlite3.pc
>>>> config.status: executing depfiles commands
>>>> config.status: executing libtool commands
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>>>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo -MD -MP
>>>> -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_POSIX_FALLOCATE=1
>>>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo -MD -MP -MF
>>>> .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>>>> gcc: internal compiler error: Killed (program cc1)
>>>> Please submit a full bug report,
>>>> with preprocessed source if appropriate.
>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>> make: *** [sqlite3.lo] Error 1
>>>> _______________________________________________
>>>> sqlite-users mailing list
>>>> [hidden email]
>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>>
>>>
>>> _______________________________________________
>>> sqlite-users mailing list
>>> [hidden email]
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>
>> _______________________________________________
>> sqlite-users mailing list
>> [hidden email]
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
>
>
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Rob Willett
David,

Thanks for the reply.

We have the latest build-essential

root@preprod1:/jambuster/src/sqlite-src-3240000/tool# apt-get install
build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.1ubuntu2).
build-essential set to manually installed.
The following package was automatically installed and is no longer
required:
   libllvm5.0
Use 'apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Indeed we have the same gcc version

gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609

It works without -O2, do you have optimisations left on?

Rob

On 10 Jul 2018, at 2:18, David Burgess wrote:

> I'm using gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>
> on 64 bit.
>
> I have built both 64 and 32 bit versions from sqlite-src-3240000
> No problems.
>
> Check your build-essential install?
>
> On Tue, Jul 10, 2018 at 1:05 AM, Dan Kennedy <[hidden email]>
> wrote:
>> On 07/09/2018 09:26 PM, Rob Willett wrote:
>>>
>>> Dan,
>>>
>>> Thanks for the information. We did try that first, failed and just
>>> assumed
>>> we were idiots and went to the the other download.
>>>
>>> Just downloaded it again, so we can check and be on the safe side,
>>> and we
>>> get the same issue.
>>>
>>> cp /jambuster/src/sqlite-src-3240000/ext/session/sqlite3session.h .
>>> ./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>>> -I/jambuster/src/sqlite-src-3240000/src
>>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>>> -I/jambuster/src/sqlite-src-3240000/ext/async
>>> -I/jambuster/src/sqlite-src-3240000/ext/session
>>> -D_HAVE_SQLITE_CONFIG_H
>>> -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1
>>> -DSQLITE_HAVE_ZLIB=1  -DSQLITE_TEMP_STORE=1 -c sqlite3.c
>>> libtool: compile:  gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>>> -I/jambuster/src/sqlite-src-3240000/src
>>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>>> -I/jambuster/src/sqlite-src-3240000/ext/async
>>> -I/jambuster/src/sqlite-src-3240000/ext/session
>>> -D_HAVE_SQLITE_CONFIG_H
>>> -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6 -DSQLITE_THREADSAFE=1
>>> -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c  -fPIC -DPIC
>>> -o
>>> .libs/sqlite3.o
>>> gcc: internal compiler error: Killed (program cc1)
>>> Please submit a full bug report,
>>> with preprocessed source if appropriate.
>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>> Makefile:715: recipe for target 'sqlite3.lo' failed
>>>
>>> ./configure seems OK, tcl looks OK (which was our worry), we think
>>> there
>>> is a genuine bug in the compiler. <sigh>. We still need the
>>> sql_analyzer
>>> program as well :) Its one of those days, I have bad compilers and
>>> the UK
>>> government could fall.
>>
>>
>>
>> After running [./configure], open the generated Makefile and remove
>> all the
>> "-O2" switches you can find. Then run [make sqlite3_analyzer].
>>
>> You'll get an un-optimized binary of course, but there's a good
>> chance this
>> will bypass the compiler bug. And it won't make much difference
>> unless your
>> databases are really big.
>>
>> Dan.
>>
>>
>>
>>
>>
>>
>>
>>>
>>> Rob
>>>
>>> On 9 Jul 2018, at 15:02, Dan Kennedy wrote:
>>>
>>>> On 07/09/2018 03:56 PM, [hidden email] wrote:
>>>>>
>>>>> Hi
>>>>>
>>>>> I'm trying to build the SQLite packages from the source. I
>>>>> **only** want
>>>>> it to get a copy of sqlite_analyse which for some reason doesn't
>>>>> appear to
>>>>> be easily available as a compiled option. The download package
>>>>> doesn't work
>>>>> on Ubuntu 16.04 and as far as we can see, there are no other
>>>>> downloadable
>>>>> binaries that don't come from China. For some reason, I don't
>>>>> really want to
>>>>> download something from Beijing....
>>>>
>>>>
>>>> The Linux binaries on sqlite.org are for 32-bit systems. For them
>>>> to work
>>>> on Ubuntu 16.04, you probably need to install multiarch support.
>>>>
>>>> Or, to build sqlite3_analyzer from source you need the full source
>>>> distribution:
>>>>
>>>>   https://www.sqlite.org/2018/sqlite-src-3240000.zip
>>>>
>>>> Dan.
>>>>
>>>>
>>>>
>>>>>
>>>>> The full steps I followed are at the very bottom of this e-mail.
>>>>> They
>>>>> are a direct copy from my terminal output.
>>>>>
>>>>> **TLDR Summary**
>>>>>
>>>>> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS
>>>>> Server
>>>>> running under OpenVZ on a commercial ISP. It's patched to the
>>>>> current
>>>>> levels. I don't think this is a problem as we don't have any other
>>>>> issues
>>>>> but...
>>>>>
>>>>> 2. SQLite3 is already installed as the normal (and older) SQLIte
>>>>> that is
>>>>> distributed with Ubuntu 16.04 LTS
>>>>>
>>>>> 3. gcc is installed. I have created a small C program to test that
>>>>> it
>>>>> can compile (Hello World) and it's fine. (gcc (Ubuntu
>>>>> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>>>>>
>>>>> 4. Downloaded
>>>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>>> through wget.
>>>>>
>>>>> 5. Checked the sha1sum and it matches the sqlite page.
>>>>>
>>>>> 6. Untarred the file into it's own directory
>>>>>
>>>>> 7. cd'ed to directory and ran ./configure.
>>>>>
>>>>> 8. Checked output of configure and nothing seemed wrong. Details
>>>>> are
>>>>> below.
>>>>>
>>>>> 9. Ran make and get a compiler failure!  (see below). I'm
>>>>> gobsmacked
>>>>> that the compiler has failed to be honest. So my first assumption
>>>>> is that we
>>>>> have cocked up something. However we've googled and checked and
>>>>> can't see
>>>>> anybody with a similar issue. I suspect that one of the Define
>>>>> statements is
>>>>> not playing nicely but not wholly sure which one OR we are missing
>>>>> a package
>>>>> that needs to be installed, e.g. TCL x,y or z.
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>>> -DHAVE_STRING_H=1
>>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>>>>> -DHAVE_STDINT_H=1
>>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
>>>>> -DHAVE_FDATASYNC=1
>>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>>> -DHAVE_POSIX_FALLOCATE=1
>>>>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo
>>>>> -MD -MP
>>>>> -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>>> -DHAVE_STRING_H=1
>>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>>>>> -DHAVE_STDINT_H=1
>>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
>>>>> -DHAVE_FDATASYNC=1
>>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>>> -DHAVE_POSIX_FALLOCATE=1
>>>>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo
>>>>> -MD -MP -MF
>>>>> .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>>>>> gcc: internal compiler error: Killed (program cc1)
>>>>> Please submit a full bug report,
>>>>> with preprocessed source if appropriate.
>>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>>> make: *** [sqlite3.lo] Error 1
>>>>>
>>>>> 10. I checked the Makefile but there's no obvious issue
>>>>>
>>>>> 11. We've done this three times now with the same result.
>>>>>
>>>>> 12. The fact the compiler barfs is worrying, we know how many
>>>>> people use
>>>>> SQLite so for this sort of error to occur is a little surprising
>>>>> and we
>>>>> still [hidden email] its our fault, but
>>>>> we cannot
>>>>> see what we have done wrong.
>>>>>
>>>>> Any help or suggestions welcomed. I have to say I am sick to the
>>>>> back
>>>>> teeth of reading websites that purport to tell you how to compile
>>>>> SQLite to
>>>>> find that it simply consists of apt-get install sqlite3 (or
>>>>> whatever). The
>>>>> signal to noise ration here is very, very low. We need a clickbait
>>>>> filter.
>>>>>
>>>>> Thanks
>>>>>
>>>>> Rob
>>>>> -----------------------------------------
>>>>>
>>>>>
>>>>> **Detailed summary**
>>>>>
>>>>> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>>> --2018-07-09 08:28:39--
>>>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>>> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
>>>>> 2600:3c00::f03c:91ff:fe96:b959
>>>>> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
>>>>> connected.
>>>>> HTTP request sent, awaiting response... 200 OK
>>>>> Length: 2699252 (2.6M) [application/x-gzip]
>>>>> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>>>>>
>>>>> sqlite-autoconf-3240000.tar.gz
>>>>> 100%[========================================================================================================================================>]
>>>>> 2.57M  1.43MB/s    in 1.8s
>>>>>
>>>>> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz'
>>>>> saved
>>>>> [2699252/2699252]
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite# sha1sum
>>>>> sqlite-autoconf-3240000.tar.gz
>>>>> da68915e3563b5244cbcdb6c7e20fb35559bcfc6
>>>>> sqlite-autoconf-3240000.tar.gz
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
>>>>> --version
>>>>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>>>>> 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.
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite# tar tzf
>>>>> sqlite-autoconf-3240000.tar.gz
>>>>> sqlite-autoconf-3240000/
>>>>> sqlite-autoconf-3240000/compile
>>>>> sqlite-autoconf-3240000/config.guess
>>>>> sqlite-autoconf-3240000/configure
>>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>>> sqlite-autoconf-3240000/aclocal.m4
>>>>> sqlite-autoconf-3240000/install-sh
>>>>> sqlite-autoconf-3240000/depcomp
>>>>> sqlite-autoconf-3240000/sqlite3.c
>>>>> sqlite-autoconf-3240000/INSTALL
>>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>>> sqlite-autoconf-3240000/missing
>>>>> sqlite-autoconf-3240000/Makefile.am
>>>>> sqlite-autoconf-3240000/config.sub
>>>>> sqlite-autoconf-3240000/sqlite3.h
>>>>> sqlite-autoconf-3240000/Makefile.in
>>>>> sqlite-autoconf-3240000/README.txt
>>>>> sqlite-autoconf-3240000/tea/
>>>>> sqlite-autoconf-3240000/tea/configure
>>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>>> sqlite-autoconf-3240000/tea/README
>>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>>> sqlite-autoconf-3240000/tea/doc/
>>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>>> sqlite-autoconf-3240000/tea/license.terms
>>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>>> sqlite-autoconf-3240000/tea/win/
>>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>>> sqlite-autoconf-3240000/tea/generic/
>>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>>> sqlite-autoconf-3240000/shell.c
>>>>> sqlite-autoconf-3240000/Makefile.msc
>>>>> sqlite-autoconf-3240000/sqlite3.1
>>>>> sqlite-autoconf-3240000/ltmain.sh
>>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>>> sqlite-autoconf-3240000/Replace.cs
>>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>>> sqlite-autoconf-3240000/configure.ac
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite# tar xvfz
>>>>> sqlite-autoconf-3240000.tar.gz
>>>>> sqlite-autoconf-3240000/
>>>>> sqlite-autoconf-3240000/compile
>>>>> sqlite-autoconf-3240000/config.guess
>>>>> sqlite-autoconf-3240000/configure
>>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>>> sqlite-autoconf-3240000/aclocal.m4
>>>>> sqlite-autoconf-3240000/install-sh
>>>>> sqlite-autoconf-3240000/depcomp
>>>>> sqlite-autoconf-3240000/sqlite3.c
>>>>> sqlite-autoconf-3240000/INSTALL
>>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>>> sqlite-autoconf-3240000/missing
>>>>> sqlite-autoconf-3240000/Makefile.am
>>>>> sqlite-autoconf-3240000/config.sub
>>>>> sqlite-autoconf-3240000/sqlite3.h
>>>>> sqlite-autoconf-3240000/Makefile.in
>>>>> sqlite-autoconf-3240000/README.txt
>>>>> sqlite-autoconf-3240000/tea/
>>>>> sqlite-autoconf-3240000/tea/configure
>>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>>> sqlite-autoconf-3240000/tea/README
>>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>>> sqlite-autoconf-3240000/tea/doc/
>>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>>> sqlite-autoconf-3240000/tea/license.terms
>>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>>> sqlite-autoconf-3240000/tea/win/
>>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>>> sqlite-autoconf-3240000/tea/generic/
>>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>>> sqlite-autoconf-3240000/shell.c
>>>>> sqlite-autoconf-3240000/Makefile.msc
>>>>> sqlite-autoconf-3240000/sqlite3.1
>>>>> sqlite-autoconf-3240000/ltmain.sh
>>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>>> sqlite-autoconf-3240000/Replace.cs
>>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>>> sqlite-autoconf-3240000/configure.ac
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite# ls
>>>>> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
>>>>> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
>>>>> aclocal.m4  config.guess  configure    depcomp  install-sh
>>>>> Makefile.am
>>>>> Makefile.in   missing      Replace.cs sqlite3.1 sqlite3ext.h  
>>>>> sqlite3.pc.in
>>>>> tea
>>>>> compile     config.sub      configure.ac    INSTALL  ltmain.sh
>>>>> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  
>>>>> sqlite3.h
>>>>> sqlite3.rc
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000#
>>>>> ./configure
>>>>> 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 for gawk... gawk
>>>>> checking whether make sets $(MAKE)... yes
>>>>> checking whether make supports nested variables... yes
>>>>> checking for style of include used by make... GNU
>>>>> 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 dependency style of gcc... gcc3
>>>>> checking for special C compiler options needed for large files...
>>>>> no
>>>>> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
>>>>> 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 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... 1966080
>>>>> 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 command to parse /usr/bin/nm -B output from gcc object...
>>>>> ok
>>>>> checking for sysroot... no
>>>>> checking for a working dd... /bin/dd
>>>>> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
>>>>> 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 fdatasync... yes
>>>>> checking for usleep... yes
>>>>> checking for fullfsync... no
>>>>> checking for localtime_r... yes
>>>>> checking for gmtime_r... yes
>>>>> checking whether strerror_r is declared... yes
>>>>> checking for strerror_r... yes
>>>>> checking whether strerror_r returns char *... no
>>>>> checking editline/readline.h usability... no
>>>>> checking editline/readline.h presence... no
>>>>> checking for editline/readline.h... no
>>>>> checking readline/readline.h usability... no
>>>>> checking readline/readline.h presence... no
>>>>> checking for readline/readline.h... no
>>>>> checking for library containing pthread_create... -lpthread
>>>>> checking for library containing pthread_mutexattr_init... none
>>>>> required
>>>>> checking for library containing dlopen... -ldl
>>>>> checking for whether to support dynamic extensions... yes
>>>>> checking for library containing log... -lm
>>>>> checking for posix_fallocate... yes
>>>>> checking zlib.h usability... yes
>>>>> checking zlib.h presence... yes
>>>>> checking for zlib.h... yes
>>>>> checking for library containing deflate... -lz
>>>>> checking for library containing system... none required
>>>>> checking that generated files are newer than configure... done
>>>>> configure: creating ./config.status
>>>>> config.status: creating Makefile
>>>>> config.status: creating sqlite3.pc
>>>>> config.status: executing depfiles commands
>>>>> config.status: executing libtool commands
>>>>>
>>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>>> -DHAVE_STRING_H=1
>>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>>>>> -DHAVE_STDINT_H=1
>>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
>>>>> -DHAVE_FDATASYNC=1
>>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>>> -DHAVE_POSIX_FALLOCATE=1
>>>>> -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g -O2 -MT sqlite3.lo
>>>>> -MD -MP
>>>>> -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c
>>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>>> -DHAVE_STRING_H=1
>>>>> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>>>>> -DHAVE_STDINT_H=1
>>>>> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
>>>>> -DHAVE_FDATASYNC=1
>>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>>> -DHAVE_POSIX_FALLOCATE=1
>>>>> -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1
>>>>> -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_HAVE_ZLIB
>>>>> -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g -O2 -MT sqlite3.lo
>>>>> -MD -MP -MF
>>>>> .deps/sqlite3.Tpo -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o
>>>>> gcc: internal compiler error: Killed (program cc1)
>>>>> Please submit a full bug report,
>>>>> with preprocessed source if appropriate.
>>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>>> make: *** [sqlite3.lo] Error 1
>>>>> _______________________________________________
>>>>> sqlite-users mailing list
>>>>> [hidden email]
>>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> sqlite-users mailing list
>>>> [hidden email]
>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>> _______________________________________________
>>> sqlite-users mailing list
>>> [hidden email]
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>
>>
>>
>> _______________________________________________
>> sqlite-users mailing list
>> [hidden email]
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Rob Willett
In reply to this post by Dan Kennedy-4
Dan,

Many thanks for this. I removed two instances of -O2 from the Makefile
and, lo and behold, it compiles.

Sadly my database to check is approx 80GB which could be interesting.
However I'll take a working (but slower) program over a faster (but not
working) application every time :)

Rob

On 9 Jul 2018, at 16:05, Dan Kennedy wrote:

> On 07/09/2018 09:26 PM, Rob Willett wrote:
>> Dan,
>>
>> Thanks for the information. We did try that first, failed and just
>> assumed we were idiots and went to the the other download.
>>
>> Just downloaded it again, so we can check and be on the safe side,
>> and we get the same issue.
>>
>> cp /jambuster/src/sqlite-src-3240000/ext/session/sqlite3session.h .
>> ./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>> -I/jambuster/src/sqlite-src-3240000/src
>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>> -I/jambuster/src/sqlite-src-3240000/ext/async
>> -I/jambuster/src/sqlite-src-3240000/ext/session
>> -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6
>> -DSQLITE_THREADSAFE=1 -DSQLITE_HAVE_ZLIB=1  -DSQLITE_TEMP_STORE=1 -c
>> sqlite3.c
>> libtool: compile:  gcc -g -O2 -DSQLITE_OS_UNIX=1 -I.
>> -I/jambuster/src/sqlite-src-3240000/src
>> -I/jambuster/src/sqlite-src-3240000/ext/rtree
>> -I/jambuster/src/sqlite-src-3240000/ext/icu
>> -I/jambuster/src/sqlite-src-3240000/ext/fts3
>> -I/jambuster/src/sqlite-src-3240000/ext/async
>> -I/jambuster/src/sqlite-src-3240000/ext/session
>> -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include/tcl8.6
>> -DSQLITE_THREADSAFE=1 -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c
>> sqlite3.c  -fPIC -DPIC -o .libs/sqlite3.o
>> gcc: internal compiler error: Killed (program cc1)
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>> Makefile:715: recipe for target 'sqlite3.lo' failed
>>
>> ./configure seems OK, tcl looks OK (which was our worry), we think
>> there is a genuine bug in the compiler. <sigh>. We still need the
>> sql_analyzer program as well :) Its one of those days, I have bad
>> compilers and the UK government could fall.
>
>
> After running [./configure], open the generated Makefile and remove
> all the "-O2" switches you can find. Then run [make sqlite3_analyzer].
>
> You'll get an un-optimized binary of course, but there's a good chance
> this will bypass the compiler bug. And it won't make much difference
> unless your databases are really big.
>
> Dan.
>
>
>
>
>
>
>>
>> Rob
>>
>> On 9 Jul 2018, at 15:02, Dan Kennedy wrote:
>>
>>> On 07/09/2018 03:56 PM, [hidden email] wrote:
>>>> Hi
>>>>
>>>> I'm trying to build the SQLite packages from the source. I **only**
>>>> want it to get a copy of sqlite_analyse which for some reason
>>>> doesn't appear to be easily available as a compiled option. The
>>>> download package doesn't work on Ubuntu 16.04 and as far as we can
>>>> see, there are no other downloadable binaries that don't come from
>>>> China. For some reason, I don't really want to download something
>>>> from Beijing....
>>>
>>> The Linux binaries on sqlite.org are for 32-bit systems. For them to
>>> work on Ubuntu 16.04, you probably need to install multiarch
>>> support.
>>>
>>> Or, to build sqlite3_analyzer from source you need the full source
>>> distribution:
>>>
>>>   https://www.sqlite.org/2018/sqlite-src-3240000.zip
>>>
>>> Dan.
>>>
>>>
>>>
>>>>
>>>> The full steps I followed are at the very bottom of this e-mail.
>>>> They are a direct copy from my terminal output.
>>>>
>>>> **TLDR Summary**
>>>>
>>>> 1. OS is a reasonably fresh (< 4 weeks old) Ubuntu 16.04 LTS Server
>>>> running under OpenVZ on a commercial ISP. It's patched to the
>>>> current levels. I don't think this is a problem as we don't have
>>>> any other issues but...
>>>>
>>>> 2. SQLite3 is already installed as the normal (and older) SQLIte
>>>> that is distributed with Ubuntu 16.04 LTS
>>>>
>>>> 3. gcc is installed. I have created a small C program to test that
>>>> it can compile (Hello World) and it's fine. (gcc (Ubuntu
>>>> 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609)
>>>>
>>>> 4. Downloaded
>>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz through
>>>> wget.
>>>>
>>>> 5. Checked the sha1sum and it matches the sqlite page.
>>>>
>>>> 6. Untarred the file into it's own directory
>>>>
>>>> 7. cd'ed to directory and ran ./configure.
>>>>
>>>> 8. Checked output of configure and nothing seemed wrong. Details
>>>> are below.
>>>>
>>>> 9. Ran make and get a compiler failure!  (see below). I'm
>>>> gobsmacked that the compiler has failed to be honest. So my first
>>>> assumption is that we have cocked up something. However we've
>>>> googled and checked and can't see anybody with a similar issue. I
>>>> suspect that one of the Define statements is not playing nicely but
>>>> not wholly sure which one OR we are missing a package that needs to
>>>> be installed, e.g. TCL x,y or z.
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1
>>>> -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>>> -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g
>>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo
>>>> sqlite3.c
>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1
>>>> -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>>> -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g
>>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC
>>>> -DPIC -o .libs/sqlite3.o
>>>> gcc: internal compiler error: Killed (program cc1)
>>>> Please submit a full bug report,
>>>> with preprocessed source if appropriate.
>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>> make: *** [sqlite3.lo] Error 1
>>>>
>>>> 10. I checked the Makefile but there's no obvious issue
>>>>
>>>> 11. We've done this three times now with the same result.
>>>>
>>>> 12. The fact the compiler barfs is worrying, we know how many
>>>> people use SQLite so for this sort of error to occur is a little
>>>> surprising and we still [hidden email]
>>>> its our fault, but we cannot see what we have done wrong.
>>>>
>>>> Any help or suggestions welcomed. I have to say I am sick to the
>>>> back teeth of reading websites that purport to tell you how to
>>>> compile SQLite to find that it simply consists of apt-get install
>>>> sqlite3 (or whatever). The signal to noise ration here is very,
>>>> very low. We need a clickbait filter.
>>>>
>>>> Thanks
>>>>
>>>> Rob
>>>> -----------------------------------------
>>>>
>>>>
>>>> **Detailed summary**
>>>>
>>>> wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>> --2018-07-09 08:28:39--
>>>> https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
>>>> Resolving www.sqlite.org (www.sqlite.org)... 45.33.6.223,
>>>> 2600:3c00::f03c:91ff:fe96:b959
>>>> Connecting to www.sqlite.org (www.sqlite.org)|45.33.6.223|:443...
>>>> connected.
>>>> HTTP request sent, awaiting response... 200 OK
>>>> Length: 2699252 (2.6M) [application/x-gzip]
>>>> Saving to: 'sqlite-autoconf-3240000.tar.gz'
>>>>
>>>> sqlite-autoconf-3240000.tar.gz
>>>> 100%[========================================================================================================================================>]
>>>>   2.57M  1.43MB/s    in 1.8s
>>>>
>>>> 2018-07-09 08:28:41 (1.43 MB/s) - 'sqlite-autoconf-3240000.tar.gz'
>>>> saved [2699252/2699252]
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# sha1sum
>>>> sqlite-autoconf-3240000.tar.gz
>>>> da68915e3563b5244cbcdb6c7e20fb35559bcfc6
>>>> sqlite-autoconf-3240000.tar.gz
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# gcc
>>>> --version
>>>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609
>>>> 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.
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# tar tzf
>>>> sqlite-autoconf-3240000.tar.gz
>>>> sqlite-autoconf-3240000/
>>>> sqlite-autoconf-3240000/compile
>>>> sqlite-autoconf-3240000/config.guess
>>>> sqlite-autoconf-3240000/configure
>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>> sqlite-autoconf-3240000/aclocal.m4
>>>> sqlite-autoconf-3240000/install-sh
>>>> sqlite-autoconf-3240000/depcomp
>>>> sqlite-autoconf-3240000/sqlite3.c
>>>> sqlite-autoconf-3240000/INSTALL
>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>> sqlite-autoconf-3240000/missing
>>>> sqlite-autoconf-3240000/Makefile.am
>>>> sqlite-autoconf-3240000/config.sub
>>>> sqlite-autoconf-3240000/sqlite3.h
>>>> sqlite-autoconf-3240000/Makefile.in
>>>> sqlite-autoconf-3240000/README.txt
>>>> sqlite-autoconf-3240000/tea/
>>>> sqlite-autoconf-3240000/tea/configure
>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>> sqlite-autoconf-3240000/tea/README
>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>> sqlite-autoconf-3240000/tea/doc/
>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>> sqlite-autoconf-3240000/tea/license.terms
>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>> sqlite-autoconf-3240000/tea/win/
>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>> sqlite-autoconf-3240000/tea/generic/
>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>> sqlite-autoconf-3240000/shell.c
>>>> sqlite-autoconf-3240000/Makefile.msc
>>>> sqlite-autoconf-3240000/sqlite3.1
>>>> sqlite-autoconf-3240000/ltmain.sh
>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>> sqlite-autoconf-3240000/Replace.cs
>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>> sqlite-autoconf-3240000/configure.ac
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# tar xvfz
>>>> sqlite-autoconf-3240000.tar.gz
>>>> sqlite-autoconf-3240000/
>>>> sqlite-autoconf-3240000/compile
>>>> sqlite-autoconf-3240000/config.guess
>>>> sqlite-autoconf-3240000/configure
>>>> sqlite-autoconf-3240000/sqlite3ext.h
>>>> sqlite-autoconf-3240000/aclocal.m4
>>>> sqlite-autoconf-3240000/install-sh
>>>> sqlite-autoconf-3240000/depcomp
>>>> sqlite-autoconf-3240000/sqlite3.c
>>>> sqlite-autoconf-3240000/INSTALL
>>>> sqlite-autoconf-3240000/sqlite3.pc.in
>>>> sqlite-autoconf-3240000/missing
>>>> sqlite-autoconf-3240000/Makefile.am
>>>> sqlite-autoconf-3240000/config.sub
>>>> sqlite-autoconf-3240000/sqlite3.h
>>>> sqlite-autoconf-3240000/Makefile.in
>>>> sqlite-autoconf-3240000/README.txt
>>>> sqlite-autoconf-3240000/tea/
>>>> sqlite-autoconf-3240000/tea/configure
>>>> sqlite-autoconf-3240000/tea/aclocal.m4
>>>> sqlite-autoconf-3240000/tea/README
>>>> sqlite-autoconf-3240000/tea/tclconfig/
>>>> sqlite-autoconf-3240000/tea/tclconfig/install-sh
>>>> sqlite-autoconf-3240000/tea/tclconfig/tcl.m4
>>>> sqlite-autoconf-3240000/tea/doc/
>>>> sqlite-autoconf-3240000/tea/doc/sqlite3.n
>>>> sqlite-autoconf-3240000/tea/Makefile.in
>>>> sqlite-autoconf-3240000/tea/license.terms
>>>> sqlite-autoconf-3240000/tea/pkgIndex.tcl.in
>>>> sqlite-autoconf-3240000/tea/win/
>>>> sqlite-autoconf-3240000/tea/win/rules.vc
>>>> sqlite-autoconf-3240000/tea/win/makefile.vc
>>>> sqlite-autoconf-3240000/tea/win/nmakehlp.c
>>>> sqlite-autoconf-3240000/tea/generic/
>>>> sqlite-autoconf-3240000/tea/generic/tclsqlite3.c
>>>> sqlite-autoconf-3240000/tea/configure.ac
>>>> sqlite-autoconf-3240000/shell.c
>>>> sqlite-autoconf-3240000/Makefile.msc
>>>> sqlite-autoconf-3240000/sqlite3.1
>>>> sqlite-autoconf-3240000/ltmain.sh
>>>> sqlite-autoconf-3240000/Makefile.fallback
>>>> sqlite-autoconf-3240000/Replace.cs
>>>> sqlite-autoconf-3240000/sqlite3.rc
>>>> sqlite-autoconf-3240000/configure.ac
>>>>
>>>> root@preprod1:/jambuster/src/sqlite# ls
>>>> sqlite-autoconf-3240000  sqlite-autoconf-3240000.tar.gz
>>>> root@preprod1:/jambuster/src/sqlite# cd sqlite-autoconf-3240000
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# ls
>>>> aclocal.m4  config.guess  configure    depcomp  install-sh
>>>> Makefile.am    Makefile.in   missing      Replace.cs sqlite3.1
>>>> sqlite3ext.h  sqlite3.pc.in  tea
>>>> compile     config.sub      configure.ac    INSTALL  ltmain.sh
>>>> Makefile.fallback    Makefile.msc  README.txt  shell.c sqlite3.c  
>>>> sqlite3.h     sqlite3.rc
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000#
>>>> ./configure
>>>> 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 for gawk... gawk
>>>> checking whether make sets $(MAKE)... yes
>>>> checking whether make supports nested variables... yes
>>>> checking for style of include used by make... GNU
>>>> 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 dependency style of gcc... gcc3
>>>> checking for special C compiler options needed for large files...
>>>> no
>>>> checking for _FILE_OFFSET_BITS value needed for large files... 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 dependency style of gcc... (cached) gcc3
>>>> 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 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... 1966080
>>>> 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 command to parse /usr/bin/nm -B output from gcc object...
>>>> ok
>>>> checking for sysroot... no
>>>> checking for a working dd... /bin/dd
>>>> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
>>>> 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 fdatasync... yes
>>>> checking for usleep... yes
>>>> checking for fullfsync... no
>>>> checking for localtime_r... yes
>>>> checking for gmtime_r... yes
>>>> checking whether strerror_r is declared... yes
>>>> checking for strerror_r... yes
>>>> checking whether strerror_r returns char *... no
>>>> checking editline/readline.h usability... no
>>>> checking editline/readline.h presence... no
>>>> checking for editline/readline.h... no
>>>> checking readline/readline.h usability... no
>>>> checking readline/readline.h presence... no
>>>> checking for readline/readline.h... no
>>>> checking for library containing pthread_create... -lpthread
>>>> checking for library containing pthread_mutexattr_init... none
>>>> required
>>>> checking for library containing dlopen... -ldl
>>>> checking for whether to support dynamic extensions... yes
>>>> checking for library containing log... -lm
>>>> checking for posix_fallocate... yes
>>>> checking zlib.h usability... yes
>>>> checking zlib.h presence... yes
>>>> checking for zlib.h... yes
>>>> checking for library containing deflate... -lz
>>>> checking for library containing system... none required
>>>> checking that generated files are newer than configure... done
>>>> configure: creating ./config.status
>>>> config.status: creating Makefile
>>>> config.status: creating sqlite3.pc
>>>> config.status: executing depfiles commands
>>>> config.status: executing libtool commands
>>>>
>>>> root@preprod1:/jambuster/src/sqlite/sqlite-autoconf-3240000# make
>>>> /bin/bash ./libtool  --tag=CC   --mode=compile gcc
>>>> -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\"
>>>> -DPACKAGE_VERSION=\"3.24.0\" -DPACKAGE_STRING=\"sqlite\ 3.24.0\"
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I.    -D_REENTRANT=1
>>>> -DSQLITE_THREADSAFE=1  -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>>> -DSQLITE_HAVE_ZLIB  -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE  -g
>>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo
>>>> sqlite3.c
>>>> libtool: compile:  gcc -DPACKAGE_NAME=\"sqlite\"
>>>> -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.24.0\"
>>>> "-DPACKAGE_STRING=\"sqlite 3.24.0\""
>>>> -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\"
>>>> -DPACKAGE=\"sqlite\" -DVERSION=\"3.24.0\" -DSTDC_HEADERS=1
>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
>>>> -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>>>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1
>>>> -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1
>>>> -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1
>>>> -DHAVE_POSIX_FALLOCATE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1
>>>> -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1
>>>> -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -g
>>>> -O2 -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fPIC
>>>> -DPIC -o .libs/sqlite3.o
>>>> gcc: internal compiler error: Killed (program cc1)
>>>> Please submit a full bug report,
>>>> with preprocessed source if appropriate.
>>>> See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
>>>> Makefile:539: recipe for target 'sqlite3.lo' failed
>>>> make: *** [sqlite3.lo] Error 1
>>>> _______________________________________________
>>>> sqlite-users mailing list
>>>> [hidden email]
>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>>
>>> _______________________________________________
>>> sqlite-users mailing list
>>> [hidden email]
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>> _______________________________________________
>> sqlite-users mailing list
>> [hidden email]
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
>
> _______________________________________________
> sqlite-users mailing list
> [hidden email]
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

David Burgess-2
> It works without -O2, do you have optimisations left on?

-fPIC -O2 -Wall -Wextra -pedantic
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Reply | Threaded
Open this post in threaded view
|

Re: I'm getting a compiler error on a SQLIte build on Ubuntu 16.04 (which surprises me)

Clemens Ladisch
In reply to this post by Rob Willett
Rob Willett wrote:
> I removed two instances of -O2 from the Makefile and, lo and behold, it compiles.
>
> Sadly my database to check is approx 80GB which could be interesting.

The bottleneck is I/O speed; it does not matter whether sqlite3_analyzer uses ten
or twenty microseconds before waiting for the next batch of data from the disk.
There will be no noticeable difference.


Regards,
Clemens
_______________________________________________
sqlite-users mailing list
[hidden email]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users