#6266: [with patch; positive review] Build problem of sqlite on Solaris 10 with
gcc 4.4.0
------------------------------------+-----------------------------
Reporter: drkirkby | Owner: drkirkby
Type: defect | Status: closed
Priority: blocker | Milestone: sage-4.0.2
Component: porting: Solaris | Resolution: fixed
Keywords: solaris sqlite | Merged in: 4.0.2.rc1
Authors: David Kirkby | Reviewers: William Stein
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
------------------------------------+-----------------------------
Changes (by chapoton):
* upstream: => N/A
Old description:
> The sqlite in Sage 4.0.1-alpha0 (sqlite-3.5.3.p3) fails to build on t2,
> which runs Solaris 10 update 4, if gcc 4.4.0 is used as the compiler.
> Error messages are:
>
> {{{
>
> ./.libs/libsqlite3.so: undefined reference to `write@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `pthread_create@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `fcntl@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `pthread_join@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `pthread_equal@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `close@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to
> `pthread_mutexattr_settype@SUNW_1.2'
> ./.libs/libsqlite3.so: undefined reference to `read@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `sleep@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `pthread_self@SUNW_0.9'
> ./.libs/libsqlite3.so: undefined reference to `fsync@SUNW_0.9'
> }}}
> I've downloaded both sqlite 3.5.3 and the latest (3.6.14.2) and find the
> build fails with similar (but fewer) error messages to those in Sage, so
> I don't believe updating to the latest sqlite will solve this. The error
> messages building the latest sqlite are:
>
> {{{
>
> ./.libs/libsqlite3.so: undefined reference to `dlerror@SUNW_1.22'
> ./.libs/libsqlite3.so: undefined reference to `dlopen@SUNW_1.22'
> ./.libs/libsqlite3.so: undefined reference to `dlsym@SUNW_1.22'
> ./.libs/libsqlite3.so: undefined reference to `dlclose@SUNW_1.22'
>
> }}}
>
> A search of the web shows the sort of error messages have existed a long
> time in lots of software, going as far back as at least 2005. The culprit
> is often indicated to be libtool.
>
> The developers of sqlite appear to be using a 3-year old version of
> libtool (1.5.24).
>
> I've downloaded that old version of libtool and found it fails 4 self-
> tests on t2. The latest version of libtool fails one test, suggesting
> sqlite would have more chance of working on Solaris if its developers
> used a later version of libtool.
>
> If it's possible to get the developers of sqlite to use a later version
> of libtool, then an update of sqlite might be sensible, but at present it
> will not achieve anything very useful for Solaris. I'm in the process of
> trying to get this fixed.
New description:
The sqlite in Sage 4.0.1-alpha0 (sqlite-3.5.3.p3) fails to build on t2,
which runs Solaris 10 update 4, if gcc 4.4.0 is used as the compiler.
Error messages are:
{{{
./.libs/libsqlite3.so: undefined reference to `write@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `pthread_create@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `fcntl@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `pthread_join@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `pthread_equal@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `close@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to
`pthread_mutexattr_settype@SUNW_1.2'
./.libs/libsqlite3.so: undefined reference to `read@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `sleep@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `pthread_self@SUNW_0.9'
./.libs/libsqlite3.so: undefined reference to `fsync@SUNW_0.9'
}}}
I've downloaded both sqlite 3.5.3 and the latest (3.6.14.2) and find the
build fails with similar (but fewer) error messages to those in Sage, so I
don't believe updating to the latest sqlite will solve this. The error
messages building the latest sqlite are:
{{{
./.libs/libsqlite3.so: undefined reference to `dlerror@SUNW_1.22'
./.libs/libsqlite3.so: undefined reference to `dlopen@SUNW_1.22'
./.libs/libsqlite3.so: undefined reference to `dlsym@SUNW_1.22'
./.libs/libsqlite3.so: undefined reference to `dlclose@SUNW_1.22'
}}}
A search of the web shows the sort of error messages have existed a long
time in lots of software, going as far back as at least 2005. The culprit
is often indicated to be libtool.
The developers of sqlite appear to be using a 3-year old version of
libtool (1.5.24).
I've downloaded that old version of libtool and found it fails 4 self-
tests on t2. The latest version of libtool fails one test, suggesting
sqlite would have more chance of working on Solaris if its developers used
a later version of libtool.
If it's possible to get the developers of sqlite to use a later version of
libtool, then an update of sqlite might be sensible, but at present it
will not achieve anything very useful for Solaris. I'm in the process of
trying to get this fixed.
--
--
Ticket URL: <http://trac.sagemath.org/ticket/6266#comment:19>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.