https://www.sqlite.org/download.html

download
sqlite-autoconf-3220000.tar.gz

untar
cd into source dir

./configure
make

static lib is made by default along with shared libs

$ ls -rlt .libs/
total 9076
-rw-r--r-- 1 rthompso staff 7473704 Feb 15 11:42 sqlite3.o
-rwxr-xr-x 1 rthompso staff 4380288 Feb 15 11:42 libsqlite3.so.0.8.6
lrwxrwxrwx 1 rthompso staff      19 Feb 15 11:42 libsqlite3.so.0 -> 
libsqlite3.so.0.8.6
lrwxrwxrwx 1 rthompso staff      19 Feb 15 11:42 libsqlite3.so -> 
libsqlite3.so.0.8.6
-rw-r--r-- 1 rthompso staff 7729804 Feb 15 11:42 libsqlite3.a
-rw-r--r-- 1 rthompso staff     956 Feb 15 11:42 libsqlite3.lai
lrwxrwxrwx 1 rthompso staff      16 Feb 15 11:42 libsqlite3.la -> 
../libsqlite3.la


reid


On Thu, 2018-02-15 at 14:39 +0200, Petros Marinos wrote:
> [EXTERNAL SOURCE]
> 
> 
> 
> Greetings Peter and thank you for your answer!
> 
> Ok, I’ll give these switches a go and will get back with my findings.
> 
> Concerning the side question, of course I can answer, no problem!
> It is fully developed in-house.
> 
> Best Regards,
> Petros
> 
> On 14 Feb 2018, 20:48 +0200, petern <peter.nichvolo...@gmail.com>, wrote:
> > Petros, FYI. gcc also has several different switches for object ouput:
> > eg. "gcc -c -static ..."
> > 
> > It might help to investigate these options during steps to compile sqlite.c
> > and your main program to avoid dynamic/static symbol conflicts.
> > 
> > -static
> > On systems that support dynamic linking, this prevents linking
> > with the shared libraries. On other systems, this option has no effect.
> > 
> > -shared
> > Produce a shared object which can then be linked with other
> > objects to form an executable. Not all systems support this option. For
> > predictable results,
> > you must also specify the same set of options used for
> > compilation (-fpic, -fPIC, or model suboptions) when you specify this
> > linker option.[1]
> > 
> > -shared-libgcc
> > -static-libgcc
> > On systems that provide libgcc as a shared library, these
> > options force the use of either the shared or static version,
> > respectively. If no shared version
> > of libgcc was built when the compiler was configured, these
> > options have no effect.
> > 
> > There are several situations in which an application should use
> > the shared libgcc instead of the static version. The most common of these
> > is when the
> > application wishes to throw and catch exceptions across
> > different shared libraries. In that case, each of the libraries as well as
> > the application itself
> > should use the shared libgcc.
> > 
> > Therefore, the G++ and GCJ drivers automatically add
> > -shared-libgcc whenever you build a shared library or a main executable,
> > because C++ and Java programs
> > typically use exceptions, so this is the right thing to do.
> > 
> > --------------
> > I have a side question for you, if you can answer.
> > How did Omilia implement their speaker independent speech recognition
> > corpus? Was it licensed from elsewhere or developed in house?
> > 
> > Peter
> > 
> > 
> > 
> > On Wed, Feb 14, 2018 at 8:27 AM, Petros Marinos <pmari...@omilia.com> wrote:
> > 
> > > Thank you Arjen and Simon for your answers, really helpful!
> > > 
> > > While there was progress by following the two commands noted in Arjen’s
> > > answer and creating the libsqlite.a file, I stumbled upon the following
> > > errors:
> > > 
> > > [LD] astdb2sqlite3.o db1-ast/libdb1.a -> astdb2sqlite3
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__libc_sigaction':
> > > (.text+0x89f0): multiple definition of `__libc_sigaction'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(sigaction.o):(.text+0x20): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__libc_fsync':
> > > (.text+0x8100): multiple definition of `__libc_fsync'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(fsync.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__connect_nocancel':
> > > (.text+0x7dc9): multiple definition of `__connect_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(connect.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__libc_fcntl':
> > > (.text+0x7c40): multiple definition of `__libc_fcntl'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(fcntl.o):(.text+0xa0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__fsync_nocancel':
> > > (.text+0x8109): multiple definition of `__fsync_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(fsync.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `_IO_funlockfile':
> > > (.text+0x8990): multiple definition of `_IO_funlockfile'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(funlockfile.o):(.text+0x0): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__libc_nanosleep':
> > > (.text+0x8220): multiple definition of `__libc_nanosleep'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(nanosleep.o):(.text+0x0): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__read':
> > > (.text+0x7ae0): multiple definition of `__libc_read'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(read.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__open_nocancel':
> > > (.text+0x8289): multiple definition of `__open_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(open.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__lseek_nocancel':
> > > (.text+0x8169): multiple definition of `__lseek_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(llseek.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__read_nocancel':
> > > (.text+0x7ae9): multiple definition of `__read_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(read.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `send':
> > > (.text+0x7f90): multiple definition of `__libc_send'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(send.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__libc_close':
> > > (.text+0x7b40): multiple definition of `__libc_close'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(close.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__open':
> > > (.text+0x8280): multiple definition of `__libc_open'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(open.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__write_nocancel':
> > > (.text+0x7a89): multiple definition of `__write_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(write.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__close_nocancel':
> > > (.text+0x7b49): multiple definition of `__close_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(close.o):(.text+0x9):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__fcntl_nocancel':
> > > (.text+0x7ba0): multiple definition of `__fcntl_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(fcntl.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__llseek':
> > > (.text+0x8160): multiple definition of `__libc_lseek'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(llseek.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `sigaction':
> > > (.text+0x8be0): multiple definition of `__sigaction'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(sigaction.o):(.text+0x210): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__errno_location':
> > > (.text+0x9df0): multiple definition of `__errno_location'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(errno-loc.o):(.text+0x0): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `_IO_funlockfile':
> > > (.text+0x8990): multiple definition of `__funlockfile'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(funlockfile.o):(.text+0x0): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__lll_lock_wait_private':
> > > (.text+0x77f0): multiple definition of `__lll_lock_wait_private'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(libc-lowlevellock.o):(.text+0x0): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__write':
> > > (.text+0x7a80): multiple definition of `__libc_write'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(write.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__nanosleep_nocancel':
> > > (.text+0x8229): multiple definition of `__nanosleep_nocancel'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(nanosleep.o):(.text+0x9): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `connect':
> > > (.text+0x7dc0): multiple definition of `__libc_connect'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(connect.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `__lll_unlock_wake_private':
> > > (.text+0x78a0): multiple definition of `__lll_unlock_wake_private'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/
> > > libc.a(libc-lowlevellock.o):(.text+0x30): first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `raise':
> > > (.text+0x8880): multiple definition of `raise'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libc.a(raise.o):(.text+0x0):
> > > first defined here
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpthread.a(libpthread.o):
> > > In function `sem_open':
> > > (.text+0x6a23): warning: the use of `mktemp' is dangerous, better use
> > > `mkstemp'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libsqlite3.a(sqlite3.o):
> > > In function `unixDlOpen':
> > > sqlite3.c:(.text+0xf4d2): undefined reference to `dlopen'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libsqlite3.a(sqlite3.o):
> > > In function `unixDlError':
> > > sqlite3.c:(.text+0xf4f1): undefined reference to `dlerror'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libsqlite3.a(sqlite3.o):
> > > In function `unixDlSym':
> > > sqlite3.c:(.text+0xf53e): undefined reference to `dlsym'
> > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libsqlite3.a(sqlite3.o):
> > > In function `unixDlClose':
> > > sqlite3.c:(.text+0xf570): undefined reference to `dlclose'
> > > collect2: error: ld returned 1 exit status
> > > make[1]: *** [astdb2sqlite3] Error 1
> > > make: *** [utils] Error 2
> > > 
> > > There seems to be a conflict concerning the libc.a and libpthread.a static
> > > libraries? Maybe libc.a and/or libpthread.a are included in libsqlite3.a,
> > > but are conflicting with the equivalent static libraries provided by the
> > > "glibc-static" rpm?
> > > 
> > > I would really appreciate your thoughts! :-)
> > > 
> > > Best Regards,
> > > Petros
> > > 
> > > On 14 Feb 2018, 16:33 +0200, Arjen Markus <arjen.mar...@deltares.nl>,
> > > wrote:
> > > > If you use the amalgamated source, there is only one file to be
> > > 
> > > compiled. That can be as simple as:
> > > > 
> > > > gcc -c sqlite3.c
> > > > 
> > > > ar r libsqlite3.a sqlite3.o
> > > > 
> > > > 
> > > > 
> > > > Any further dependencies are up to the linker. No need to worry about
> > > 
> > > that.
> > > > 
> > > > 
> > > > 
> > > > Regards,
> > > > 
> > > > 
> > > > 
> > > > Arjen
> > > > 
> > > > 
> > > > > -----Original Message-----
> > > > > From: sqlite-users [mailto:sqlite-users-bounces@
> > > 
> > > mailinglists.sqlite.org] On Behalf
> > > > > Of Petros Marinos
> > > > > Sent: Wednesday, February 14, 2018 3:30 PM
> > > > > To: sqlite-users@mailinglists.sqlite.org
> > > > > Subject: [sqlite] Static sqlite3 library for Linux
> > > > > 
> > > > > Greetings dears!
> > > > > 
> > > > > While I am trying to build a static library of another tool which is
> > > 
> > > dependent to sqlite,
> > > > > I need to use an sqlite3 static library as well. Still, in my Centos
> > > 
> > > 7.4 system, I
> > > > > cannot find one. The error is shown below:
> > > > > 
> > > > > /bin/ld: cannot find -lsqlite3
> > > > > collect2: error: ld returned 1 exit status
> > > > > make[1]: *** [astdb2sqlite3] Error 1
> > > > > make: *** [utils] Error 2
> > > > > 
> > > > > When I look for one with:
> > > > > 
> > > > > yum provides */libsqlite*.a
> > > > > 
> > > > > I find the Windows version:
> > > > > 
> > > > > /usr/x86_64-w64-mingw32/sys-root/mingw/lib/libsqlite3.a
> > > > > 
> > > > > Which of course is useless:
> > > > > 
> > > > > /usr/lib/gcc/x86_64-redhat-linux/4.8.5/.../.../.../.../lib64/libsqlite3.a:
> > > 
> > > error adding
> > > > > symbols: File format not recognized
> > > > > collect2: error: ld returned 1 exit status
> > > > > make[1]: *** [astdb2sqlite3] Error 1
> > > > > make: *** [utils] Error 2
> > > > > 
> > > > > Is there any chance that I can find a Linux flavour static sqlite3
> > > 
> > > library, or do I have
> > > > > to build from source?
> > > > > 
> > > > > And if I have to build from source, is it recommended to use the
> > > 
> > > sqlite-autoconf or
> > > > > the sqlite-src pkg? Or does the amalgamation file could be of any use,
> > > 
> > > so as to
> > > > > avoid compilation etc?
> > > > > 
> > > > > PS: One final relevant question, does the resulting libsqlite3.a file
> > > 
> > > (when built from
> > > > > source), includes any other libraries like libc.a, libthread.a etc? Is
> > > 
> > > there a way to
> > > > > avoid this?
> > > > > 
> > > > > Thank you in advance for your time!
> > > > > 
> > > > > Best Regards,
> > > > > Petros
> > > > > _______________________________________________
> > > > > sqlite-users mailing list
> > > > > sqlite-users@mailinglists.sqlite.org
> > > > > https://urldefense.proofpoint.com/v2/url?u=http-3A__mailinglists.sqlite.org_cgi-2Dbin_mailman_listinfo_sqlite-2Dusers&d=DwIGaQ&c=w8fEmIi-B5lsC0MnOiGTloUx5YmN70-3jVCmqqbXNxM&r=jgazr1zjWOphYRY
> > > > > UjdZQeDxY8qk_8iVga1Rl0Pl9NMY&m=rPqttEJ5_b04xXlvMz9e66-EFL5gVLRHyDujH5D9ZaU&s=NcobUWKm5A4kSOu1kYlhkcec95KmAd_NpQaGpP9ZRbo&e=
> > > > 
> > > > DISCLAIMER: This message is intended exclusively for the addressee(s)
> > > 
> > > and may contain confidential and privileged information. If you are not 
> > > the
> > > intended recipient please notify the sender immediately and destroy this
> > > message. Unauthorized use, disclosure or copying of this message is
> > > strictly prohibited. The foundation 'Stichting Deltares', which has its
> > > seat at Delft, The Netherlands, Commercial Registration Number 41146461, 
> > > is
> > > not liable in any way whatsoever for consequences and/or damages resulting
> > > from the improper, incomplete and untimely dispatch, receipt and/or 
> > > content
> > > of this e-mail.
> > > > _______________________________________________
> > > > sqlite-users mailing list
> > > > sqlite-users@mailinglists.sqlite.org
> > > > https://urldefense.proofpoint.com/v2/url?u=http-3A__mailinglists.sqlite.org_cgi-2Dbin_mailman_listinfo_sqlite-2Dusers&d=DwIGaQ&c=w8fEmIi-B5lsC0MnOiGTloUx5YmN70-3jVCmqqbXNxM&r=jgazr1zjWOphYRYUj
> > > > dZQeDxY8qk_8iVga1Rl0Pl9NMY&m=rPqttEJ5_b04xXlvMz9e66-EFL5gVLRHyDujH5D9ZaU&s=NcobUWKm5A4kSOu1kYlhkcec95KmAd_NpQaGpP9ZRbo&e=
> > > 
> > > _______________________________________________
> > > sqlite-users mailing list
> > > sqlite-users@mailinglists.sqlite.org
> > > https://urldefense.proofpoint.com/v2/url?u=http-3A__mailinglists.sqlite.org_cgi-2Dbin_mailman_listinfo_sqlite-2Dusers&d=DwIGaQ&c=w8fEmIi-B5lsC0MnOiGTloUx5YmN70-3jVCmqqbXNxM&r=jgazr1zjWOphYRYUjdZ
> > > QeDxY8qk_8iVga1Rl0Pl9NMY&m=rPqttEJ5_b04xXlvMz9e66-EFL5gVLRHyDujH5D9ZaU&s=NcobUWKm5A4kSOu1kYlhkcec95KmAd_NpQaGpP9ZRbo&e=
> > > 
> > 
> > _______________________________________________
> > sqlite-users mailing list
> > sqlite-users@mailinglists.sqlite.org
> > https://urldefense.proofpoint.com/v2/url?u=http-3A__mailinglists.sqlite.org_cgi-2Dbin_mailman_listinfo_sqlite-2Dusers&d=DwIGaQ&c=w8fEmIi-B5lsC0MnOiGTloUx5YmN70-3jVCmqqbXNxM&r=jgazr1zjWOphYRYUjdZQe
> > DxY8qk_8iVga1Rl0Pl9NMY&m=rPqttEJ5_b04xXlvMz9e66-EFL5gVLRHyDujH5D9ZaU&s=NcobUWKm5A4kSOu1kYlhkcec95KmAd_NpQaGpP9ZRbo&e=
> 
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> https://urldefense.proofpoint.com/v2/url?u=http-3A__mailinglists.sqlite.org_cgi-2Dbin_mailman_listinfo_sqlite-2Dusers&d=DwIGaQ&c=w8fEmIi-B5lsC0MnOiGTloUx5YmN70-3jVCmqqbXNxM&r=jgazr1zjWOphYRYUjdZQeDx
> Y8qk_8iVga1Rl0Pl9NMY&m=rPqttEJ5_b04xXlvMz9e66-EFL5gVLRHyDujH5D9ZaU&s=NcobUWKm5A4kSOu1kYlhkcec95KmAd_NpQaGpP9ZRbo&e=
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to