Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-13 Thread Dr. David Kirkby
Tim Bradshaw wrote:
> On 13 Jun 2009, at 12:29, Dr. David Kirkby wrote:
> 
>> I believe if Sun make some public access machines available, there  
>> would
>> be a benefit to Sun, and would hopefully avoid a lot of the GNUisms  
>> one
>> sees in software. Whether the cost would outweigh the benefit I have  
>> no
>> idea. There is obviously the cost of power, hardware and staff to  
>> run it.
> 
> I guess we probably should just agree to differ about that.  I really  
> don't think people who can't be bothered to download & install a free  
> copy of Solaris (in a VM, so with no hardware cost in almost all  
> cases) are interested in fixing stuff on some platform other than  
> their favoured one.

I guess we will have to agree to differ. I've no problem with that.

I once reported a Solaris specific bug to some developer, who replied

"As long as it builds on Redhat 8, that is good enough for me".

I never understood why he bothered making the code publicly available in 
that case!
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-13 Thread Tim Bradshaw
On 13 Jun 2009, at 12:29, Dr. David Kirkby wrote:

> I believe if Sun make some public access machines available, there  
> would
> be a benefit to Sun, and would hopefully avoid a lot of the GNUisms  
> one
> sees in software. Whether the cost would outweigh the benefit I have  
> no
> idea. There is obviously the cost of power, hardware and staff to  
> run it.

I guess we probably should just agree to differ about that.  I really  
don't think people who can't be bothered to download & install a free  
copy of Solaris (in a VM, so with no hardware cost in almost all  
cases) are interested in fixing stuff on some platform other than  
their favoured one.

___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-13 Thread Dr. David Kirkby
Tim Bradshaw wrote:
> On 12 Jun 2009, at 23:46, Dr. David Kirkby wrote:
> 
>> I don't know if you work for Sun, but if you do, it would be really  
>> good
>> if Sun made some open-access Suns available for developers to test  
>> their
>> code, like HP do.
> 
> Surely this would only matter for SPARC-related issues (which I don't  
> think we're looking at here, are we?)  I can't imagine anyone finding  
> it too much hard work to install a Solaris x86 on a VM (both available  
> free of charge, from Sun even, if you use virtualbox).  The situation  
> is different for HP-UX & AIX which don't run on (VMs on) commodity HW,  
> and even if they did might not be legal to run there.

Yes, SPARC systems mainly I would agree, but ...

I think there are a lot of people that can't be bothered to install 
Solaris x86, but might be more inclined to try to resolve 
Solaris-specific bugs if someone sent them a bug report, with a link to 
a Sun site where they could verify the bug.

I've got an Intel based Sony laptop, but I gather Sony fix the BIOS in 
some way that prevents vitualisation software working - or possibly it 
works, but with poor performance. I've got OpenSolaris on that anyway, 
but I don't have any x86 machine with Solaris 10.

HP did in fact have linux systems too and I think some of those are on 
x86 hardware.


> The Sun compilers are free as well (though not open source to my  
> knowledge).

Yes.

> My experience (I'm contracted through Sun at the moment) is that  
> virtually the only place where you need to care about the x86/SPARC  
> thing is differences in booting, which won't matter for SQLite.  I  
> guess compiler options  might be different, and certainly getting  
> good performance from the CMT systems would probably require access to  
> them.

Experience tells me, the differences are more than just booting. I 
assume compiler flags could be easily set on Intel based Solaris system 
which would not work on a SPARC based Solaris system.

My Sony laptop has the BIOS screwed up *purposely* by Sony to prevent 
virtualisation software being used (or at least severely cripple the 
performance of it). That runs OpenSolaris anyway, but not everyone is 
going to take that route.

People could often dual boot or install Solaris, but a lot don't bother. 
I think they could be persuaded to fix Solaris-specific bugs if they are 
made aware of them, and have *easy* access to a Solaris machine.

Over the years, I have let the occasional developer have access to my 
SPARC based systems, but not as root. There was in fact someone on 
comp.unix.solaris recently letting people have root access in a zone.

The University of Washington has given me access to their T5240, despite 
the fact I have my own SPARC hardware. So there are cases of people 
allowing others access to their SPARC based systems. But to my 
knowledge, Sun have never done it.

The guys at the University of Washington produced some binaries of the 
compiler tools (based on gcc-4.3.3) to build Sage on a Blade 2500 
running Solaris 10, update 4. I downloaded them to my
Blade 2000, which runs Solaris 10 update 6, where they worked fine. But 
the fortran compiler did not work on the universities Sun T5240, which 
runs Solaris 10 update 4.

I know of a bug in Mathematica, a rather expensive bit of software from 
Wolfram Research, which meant it run on a Solaris x86 system with an AMD 
processor, but not some Intel ones.

I believe if Sun make some public access machines available, there would 
be a benefit to Sun, and would hopefully avoid a lot of the GNUisms one 
sees in software. Whether the cost would outweigh the benefit I have no 
idea. There is obviously the cost of power, hardware and staff to run it.

Dave
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-13 Thread Dr. David Kirkby
Nicolas Williams wrote:
> On Sat, Jun 13, 2009 at 01:43:15AM +0100, Dr. David Kirkby wrote:
>> Thank you for your help. The fact you told me I did not need to link 
>> libpthread was crucial to solving this.
>>
>> I've found that just removing the libpthread from the generated Makefile 
>> solves this.
> 
> Glad to help.

I must say, Sun employees have been most helpful at solving Sun-related 
problems I've posted on the internet over the years. (Although this 
issue arose when I was trying to build Sage on the T5240 Sun at the 
University of Washington, I have a few Suns at home in England). I like 
the machines and the OS. Casper Dik, who you may know of, has solved 
numerous issues for me. Casper is very helpful on comp.unix.solaris.

>> The offer is still there for a sqlite developer to fix this properly on 
>> a Sun, but as a hack, just removing the library works. See my code below.
> 
> Where does that code go, that is, in what file?  Also, isn't this a bug
> in libtool?
> 
> Nico


The bit of code I posted which striped libpthread from the Makefile 
using sed was added to a file in the Sage project

http://www.sagemath.org/

Sage aims to be a free GPL'ed alternative to the expensive commercial 
maths packages like Mathematica, Maple, MATLAB etc. It's primarily a 
Linux application. Microsoft are paying for a port to Windows, and Sun 
have contributed towards getting it running on Solaris.

You are probably right this sqlite issue is a libtool bug. I've 
suspected that for some time, as a Google on error messages with 
'undefined reference to somefunct...@sunw_x' have appeared in many 
programs over the years. Apache in particular seems to have suffered it, 
going back to at least as early as 2005. I had noticed that in most or 
all of the cases, libtool was used. But I was never sure if it was a 
libtool bug, or developers using libtool in an incorrect way.

I would add, both sqlite 3.5.3 and sqlite 3.6.14.2  build OK on Solaris 
10 update 4 with gcc 4.3.2. So I did wonder if it was a bug in gcc 4.4.0

As with many of these software issues, it is often difficult to know 
exactly where the fault lies. But at least in this case, a simple hack 
solves the problem for Sage.

As a matter of interest, do you know in what release of Solaris the 
functionality of libpthread was moved into libc? (Don't spend too much 
time over it if you don't know - it's not that important to me).

Dave
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-13 Thread Tim Bradshaw
On 12 Jun 2009, at 23:46, Dr. David Kirkby wrote:

> I don't know if you work for Sun, but if you do, it would be really  
> good
> if Sun made some open-access Suns available for developers to test  
> their
> code, like HP do.

Surely this would only matter for SPARC-related issues (which I don't  
think we're looking at here, are we?)  I can't imagine anyone finding  
it too much hard work to install a Solaris x86 on a VM (both available  
free of charge, from Sun even, if you use virtualbox).  The situation  
is different for HP-UX & AIX which don't run on (VMs on) commodity HW,  
and even if they did might not be legal to run there.

The Sun compilers are free as well (though not open source to my  
knowledge).

My experience (I'm contracted through Sun at the moment) is that  
virtually the only place where you need to care about the x86/SPARC  
thing is differences in booting, which won't matter for SQLite.  I  
guess compiler options  might be different, and certainly getting  
good performance from the CMT systems would probably require access to  
them.
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Nicolas Williams
On Sat, Jun 13, 2009 at 01:43:15AM +0100, Dr. David Kirkby wrote:
> Thank you for your help. The fact you told me I did not need to link 
> libpthread was crucial to solving this.
> 
> I've found that just removing the libpthread from the generated Makefile 
> solves this.

Glad to help.

> The offer is still there for a sqlite developer to fix this properly on 
> a Sun, but as a hack, just removing the library works. See my code below.

Where does that code go, that is, in what file?  Also, isn't this a bug
in libtool?

Nico
-- 
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
Nicolas Williams wrote:
> On Fri, Jun 12, 2009 at 04:34:50PM -0500, Nicolas Williams wrote:
>> On Fri, Jun 12, 2009 at 10:06:31PM +0100, Dr. David Kirkby wrote:
>>> [...]
>>> -lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
>>>
>>> If the order of libpthread and libc are exchanged, the library can be 
>>> built. In other words, libc needs to be linked before libpthread, not 
>>> the other way around.
>> Hmm, that's really odd.  On S10 libpthread is an empty filter on libc,
>> which is a fancy way of saying that all of the code in libpthread moved
>> to libc and libpthread is just a shell saying as much so that older
>> programs linked with libpthread can still run.  You should not add
>> -lpthread to the link-edit of any program or shared object in Solaris 10
>> or above, but if you did the order in which -lpthread and -lc appear in
>> the link-edit command-line should make no difference.
> 
> I spoke to a Solaris linker engineer, and we both suspect that: a)
> you're using gld, b) libtool is doing things not apparent from the logs
> that you've posted, c) gld is choking on Solaris libraries that are
> filters, of which two that are implicated here are: libpthread (appears
> explicitly in the output you posted) and libdl (implied by the errors
> about dlerror and friends).

Thank you for your help. The fact you told me I did not need to link 
libpthread was crucial to solving this.

I've found that just removing the libpthread from the generated Makefile 
solves this.

The offer is still there for a sqlite developer to fix this properly on 
a Sun, but as a hack, just removing the library works. See my code below.


Dave


if [ `uname` = "SunOS" ]; then
# Linking in pthread is not necessary in recent versions of Solaris, 
as all the functionality is
# in libc. The thread library is only included for backwards 
compatibility. However, libtool
# appears to be messing things up, so  the library will be removed 
from the Makefile.
# This is probably not the most elegant way, but it works.
# David Kirkby, 13th June 2009
sed 's/LIBPTHREAD=-lpthread/LIBPTHREAD=/g' Makefile > 
Makefile-without-pthread
mv Makefile-without-pthread  Makefile
fi


___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Nicolas Williams
On Fri, Jun 12, 2009 at 11:46:01PM +0100, Dr. David Kirkby wrote:
> > I spoke to a Solaris linker engineer, and we both suspect that: a)
> > you're using gld, 
> 
> Yes, I am.
> 
> GNU ld version 2.15
> 
> [...]
> 
> I can try it with Solaris ld.

OK, let us know how that goes.  Also, if there's any bug in either
autoconf or SQLite3 that is causing -lpthread to be added, that'd be
worth knowing about too.  I can't quite tell where that's coming from...

> > Also, you say that GNU binutils are easier to use... we'd love to find
> > out in what specific ways.  If there's something about the Solaris ld
> > that you dislike, it might be a bug that we'd gladly fix, but if you
> > don't tell us, we might not learn about it.  You should post about such
> > things on tools-link...@opensolaris.org (even if you're working on S10).
> 
> I'm no fan of GNU utilities - I'd love to use the Solaris tools. Sun 
> Studio 12 would be faster than gcc on SPARC.

This is getting OT for this list, so we should take it off-list.  There
may be some useful information below for the list, so I'll post this.

Yesterday I saw a post on blogs.sun.com about Sun Studio besting GCC on
x86/64 too.  GCC has lots of C extensions that Sun Studio doesn't yet
(it has support for some, but not all of them), and from what you say
about Sage it wouldn't surprise me if some parts of Sage used these
extensions.

The key thing though is this: you can mix objects compiled from C source
by GCC and Sun Studio.  So you can build SQLite3 with Sun Studio and
Sage with GCC, if that's what you want.

> There are various reports of gcc working better with the GNU linker than 
> the Sun one. So currently the plan is to get Sage working on 32-bit with 
> gcc. Next stage will be 64-bit. Whether it will ever use the Sun tools 
> is another matter - I think the effort in fixing so many GNUisms would 
> be too great.

I've used GCC plenty, but on Solaris I always use the Solaris ld, and I
avoid libtool like the plague.  I'm tempted to contribute a
Makefile.solaris for SQLite3 so as to avoid libtool and make use of
Solaris linker features like -Bdirect.

> I don't know if you work for Sun, but if you do, it would be really good 
> if Sun made some open-access Suns available for developers to test their 
> code, like HP do.

OpenSolaris has been getting lots of FOSS integrated, and there's a
/contrib repository that developers can contribute to.  I'll pass the
word about Sage on to the teams that are working on this.

> I believe the Sun linker has been tried, but has caused more problems 
> than the GNU one with the other packages. That's not a fault of Sun, but 
> it is a fact of life.

Perhaps, but we'd like to know why so we can make our linker better.
Also, if gld is choking on filters, then it may be a good idea to file a
bug against gld, and to at least document the incompatibility and any
workarounds.  On the other side, if our ld is failing because, for
example, it doesn't have gld's --wrap option, or some such feature, and
that becomes an issue, then we might add support for that.

> I'll try removing libpthread. That should be easy enough - if all else 
> fails, I'll run sed on the Makefile !!

:)

Thanks,

Nico
-- 
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
Nicolas Williams wrote:
> On Fri, Jun 12, 2009 at 04:34:50PM -0500, Nicolas Williams wrote:
>> On Fri, Jun 12, 2009 at 10:06:31PM +0100, Dr. David Kirkby wrote:
>>> [...]
>>> -lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
>>>
>>> If the order of libpthread and libc are exchanged, the library can be 
>>> built. In other words, libc needs to be linked before libpthread, not 
>>> the other way around.
>> Hmm, that's really odd.  On S10 libpthread is an empty filter on libc,
>> which is a fancy way of saying that all of the code in libpthread moved
>> to libc and libpthread is just a shell saying as much so that older
>> programs linked with libpthread can still run.  You should not add
>> -lpthread to the link-edit of any program or shared object in Solaris 10
>> or above, but if you did the order in which -lpthread and -lc appear in
>> the link-edit command-line should make no difference.
> 
> I spoke to a Solaris linker engineer, and we both suspect that: a)
> you're using gld, 

Yes, I am.

GNU ld version 2.15
b) libtool is doing things not apparent from the logs
> that you've posted, 

Perhaps. I can post libtool if it helps.

c) gld is choking on Solaris libraries that are
> filters, of which two that are implicated here are: libpthread (appears
> explicitly in the output you posted) and libdl (implied by the errors
> about dlerror and friends).


> Can you try this with the Solaris ld?  Alternatively, you could look
> into eliminating libtools use of libpthread and libdl, as they are not
> needed under Solaris 10.

I can try it with Solaris ld.

> Also, you say that GNU binutils are easier to use... we'd love to find
> out in what specific ways.  If there's something about the Solaris ld
> that you dislike, it might be a bug that we'd gladly fix, but if you
> don't tell us, we might not learn about it.  You should post about such
> things on tools-link...@opensolaris.org (even if you're working on S10).
> 
> Nico


I'm no fan of GNU utilities - I'd love to use the Solaris tools. Sun 
Studio 12 would be faster than gcc on SPARC.

But the problem is Sage, the maths program

http://www.sagemath.org/

is written in a different way to most programs. It basically consists of 
a collection of open-source tools. So one tool would be used for 
calculus, another for stats, another for arbitrary precision arithmetic 
etc etc. There are 94 of them, plus optional ones!

The problem is, most of those packages were written by Linux developers 
and have numerous GNUisms. Sorting all them out would be a major 
nightmare. That's the reason GNU C is used too.

There are various reports of gcc working better with the GNU linker than 
the Sun one. So currently the plan is to get Sage working on 32-bit with 
gcc. Next stage will be 64-bit. Whether it will ever use the Sun tools 
is another matter - I think the effort in fixing so many GNUisms would 
be too great.

I don't know if you work for Sun, but if you do, it would be really good 
if Sun made some open-access Suns available for developers to test their 
code, like HP do.

I believe the Sun linker has been tried, but has caused more problems 
than the GNU one with the other packages. That's not a fault of Sun, but 
it is a fact of life.

I'll try removing libpthread. That should be easy enough - if all else 
fails, I'll run sed on the Makefile !!




___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
Nicolas Williams wrote:
> On Fri, Jun 12, 2009 at 10:06:31PM +0100, Dr. David Kirkby wrote:
>> [...]
>> -lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
>>
>> If the order of libpthread and libc are exchanged, the library can be 
>> built. In other words, libc needs to be linked before libpthread, not 
>> the other way around.
> 
> Hmm, that's really odd.  On S10 libpthread is an empty filter on libc,
> which is a fancy way of saying that all of the code in libpthread moved
> to libc and libpthread is just a shell saying as much so that older
> programs linked with libpthread can still run.  You should not add
> -lpthread to the link-edit of any program or shared object in Solaris 10
> or above, but if you did the order in which -lpthread and -lc appear in
> the link-edit command-line should make no difference.
> 
>> I've no idea if that is a bug in gcc, a bug in libtool or a bug in sqlite.
> 
> I don't see -lpthread in configure.ac, but I do see this in the output
> of ./configure:
> 
> checking whether to support threadsafe operation... yes
> checking for library containing pthread_create... none required
> 
> and then the generated Makefile does actually include -lpthread, but
> only for building the Tcl module, testfixture, and sqlite3_analyzer:
> 
> ./Makefile:LIBTCL = -L/usr/lib -ltcl8.4 -ldl  -lsocket -lnsl -lpthread -lm
> 
> Very strange.
> 
> Nico


The thing that made me try exchanging libc and libpthread was in fact 
some hints on other pages, totally unrelated to sqlite. There are tons 
of links with people having this problem on Apache, ntop, and other bits 
of software. libtool is always involved.

I can't seem to find the page which suggested transposing the order of 
the libraries, but there was one, which made me transpose them.

Perhaps I should try to find what is adding libpthread then, and remove it.

In the short term I'd like to get this working on sqlite-3.5.3. But in 
the longer term, I would hope that Sage updates to the latest sqlite, so 
it would need to run on that.



___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Nicolas Williams
On Fri, Jun 12, 2009 at 04:34:50PM -0500, Nicolas Williams wrote:
> On Fri, Jun 12, 2009 at 10:06:31PM +0100, Dr. David Kirkby wrote:
> > [...]
> > -lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
> > 
> > If the order of libpthread and libc are exchanged, the library can be 
> > built. In other words, libc needs to be linked before libpthread, not 
> > the other way around.
> 
> Hmm, that's really odd.  On S10 libpthread is an empty filter on libc,
> which is a fancy way of saying that all of the code in libpthread moved
> to libc and libpthread is just a shell saying as much so that older
> programs linked with libpthread can still run.  You should not add
> -lpthread to the link-edit of any program or shared object in Solaris 10
> or above, but if you did the order in which -lpthread and -lc appear in
> the link-edit command-line should make no difference.

I spoke to a Solaris linker engineer, and we both suspect that: a)
you're using gld, b) libtool is doing things not apparent from the logs
that you've posted, c) gld is choking on Solaris libraries that are
filters, of which two that are implicated here are: libpthread (appears
explicitly in the output you posted) and libdl (implied by the errors
about dlerror and friends).

Can you try this with the Solaris ld?  Alternatively, you could look
into eliminating libtools use of libpthread and libdl, as they are not
needed under Solaris 10.

Also, you say that GNU binutils are easier to use... we'd love to find
out in what specific ways.  If there's something about the Solaris ld
that you dislike, it might be a bug that we'd gladly fix, but if you
don't tell us, we might not learn about it.  You should post about such
things on tools-link...@opensolaris.org (even if you're working on S10).

Nico
-- 
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Nicolas Williams
On Fri, Jun 12, 2009 at 10:06:31PM +0100, Dr. David Kirkby wrote:
> [...]
> -lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
> 
> If the order of libpthread and libc are exchanged, the library can be 
> built. In other words, libc needs to be linked before libpthread, not 
> the other way around.

Hmm, that's really odd.  On S10 libpthread is an empty filter on libc,
which is a fancy way of saying that all of the code in libpthread moved
to libc and libpthread is just a shell saying as much so that older
programs linked with libpthread can still run.  You should not add
-lpthread to the link-edit of any program or shared object in Solaris 10
or above, but if you did the order in which -lpthread and -lc appear in
the link-edit command-line should make no difference.

> I've no idea if that is a bug in gcc, a bug in libtool or a bug in sqlite.

I don't see -lpthread in configure.ac, but I do see this in the output
of ./configure:

checking whether to support threadsafe operation... yes
checking for library containing pthread_create... none required

and then the generated Makefile does actually include -lpthread, but
only for building the Tcl module, testfixture, and sqlite3_analyzer:

./Makefile:LIBTCL = -L/usr/lib -ltcl8.4 -ldl  -lsocket -lnsl -lpthread -lm

Very strange.

Nico
-- 
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
Dr. David Kirkby wrote:
> Dr. David Kirkby wrote:
>> Dr. David Kirkby wrote:
> 
> 
>>
>> I just tried to build libtool 1.5.24 (the version of libtool used in 
>> the latest sqlite release, and noticed that:
>>
>> 4 of 107 tests failed
>> (5 tests were not run)


I just realised i done a stupid thing and replied to my own message!!! I 
thought someone else was confirming the exact same issue! Sorry about 
that. I'm not quite as mad as I must have seemed.
___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
Dr. David Kirkby wrote:
> Dr. David Kirkby wrote:


> 
> I just tried to build libtool 1.5.24 (the version of libtool used in the 
> latest sqlite release, and noticed that:
> 
> 4 of 107 tests failed
> (5 tests were not run)
> Please report to bug-libt...@gnu.org
> 
Yes, there are definite issues with the version of libtool used as part 
of sqlite. I think it should be updated. At least on Solaris, the 
current version of libtool passes all but one test. I have reported that 
one test to them.

In version 3.5.3 of sqlite, I think I have identified the problem.

This line of code is the route of the error message.

gcc -shared  .libs/alter.o .libs/analyze.o .libs/attach.o .libs/auth.o 
.libs/btmutex.o .libs/btree.o .libs/build.o .libs/callback.o 
.libs/complete.o .libs/date.o .libs/delete.o .libs/expr.o .libs/func.o 
.libs/hash.o .libs/journal.o .libs/insert.o .libs/loadext.o .libs/main.o 
.libs/malloc.o .libs/mem1.o .libs/mem2.o .libs/mem3.o .libs/mutex.o 
.libs/mutex_os2.o .libs/mutex_unix.o .libs/mutex_w32.o .libs/opcodes.o 
.libs/os.o .libs/os_unix.o .libs/os_win.o .libs/os_os2.o .libs/pager.o 
.libs/parse.o .libs/pragma.o .libs/prepare.o .libs/printf.o 
.libs/random.o .libs/select.o .libs/table.o .libs/tokenize.o 
.libs/trigger.o .libs/update.o .libs/util.o .libs/vacuum.o .libs/vdbe.o 
.libs/vdbeapi.o .libs/vdbeaux.o .libs/vdbeblob.o .libs/vdbefifo.o 
.libs/vdbemem.o .libs/where.o .libs/utf.o .libs/legacy.o .libs/vtab.o 
-lpthread -lc   -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6

If the order of libpthread and libc are exchanged, the library can be 
built. In other words, libc needs to be linked before libpthread, not 
the other way around.

I've no idea if that is a bug in gcc, a bug in libtool or a bug in sqlite.

The same sort of error messages are generated in the latest sqlite, but 
it's not so easy to see where the problem is.

As I said before, if any of the regular sqlite develops could attempt to 
debug this, I can arrange access to a Sun at the University of Washington.


___
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] Build problem of sqlite-3.6.14.2 on Solaris 10 with gcc 4.4.0

2009-06-12 Thread Dr. David Kirkby
i thought I'd copy the output of the config.log too.

The message size limit of 40 KB was exceeded when I tried it in a 
previous attempt to submit this, so hopefully this will be ok.




kir...@t2:~/sqlite-3.6.14.2$ more config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by sqlite configure 3.6.14.2, which was
generated by GNU Autoconf 2.62.  Invocation command line was

   $ ./configure

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

hostname = t2
uname -m = sun4v
uname -r = 5.10
uname -s = SunOS
uname -v = Generic_127111-09

/usr/bin/uname -p = sparc
/bin/uname -X = System = SunOS
Node = t2
Release = 5.10
KernelID = Generic_127111-09
Machine = sun4v
BusType = 
Serial = 
Users = 
OEM# = 0
Origin# = 1
NumCPU = 128

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

PATH: /home/kirkby/bin
PATH: /home/kirkby/dependencies/bin
PATH: /usr/bin


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

configure:2092: checking for a BSD-compatible install
configure:2160: result: ./install-sh -c
configure:2171: checking whether build environment is sane
configure:2214: result: yes
configure:2276: checking for gawk
configure:2306: result: no
configure:2276: checking for mawk
configure:2306: result: no
configure:2276: checking for nawk
configure:2292: found /usr/bin/nawk
configure:2303: result: nawk
configure:2314: checking whether make sets $(MAKE)
configure:2336: result: yes
configure:2533: checking for style of include used by make
configure:2561: result: GNU
configure:2634: checking for gcc
configure:2650: found /home/kirkby/dependencies/bin/gcc
configure:2661: result: gcc
configure:2899: checking for C compiler version
configure:2907: gcc --version >&5
gcc (GCC) 4.4.0
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2911: $? = 0
configure:2918: gcc -v >&5
Using built-in specs.
Target: sparc-sun-solaris2.10
Configured with: ../gcc-4.4.0/configure --with-gnu-as 
--with-as=/home/kirkby/bin/as --with-gnu-ld 
--with-ld=/home/kirkby/bin/ld --with-gmp=/home/kirkby/dependencies/ 
--with-mpfr=/home/kirkby/dependencies/ --enable-languages=c,c++,fortran 
--prefix=/home/kirkby/dependencies/
Thread model: posix
gcc version 4.4.0 (GCC)
configure:2922: $? = 0
configure:2929: gcc -V >&5
gcc: '-V' option must have argument
configure:2933: $? = 1
configure:2956: checking for C compiler default output file name
configure:2978: gccconftest.c  >&5
configure:2982: $? = 0
configure:3020: result: a.out
configure:3037: checking whether the C compiler works
configure:3047: ./a.out
configure:3051: $? = 0
configure:3068: result: yes
configure:3075: checking whether we are cross compiling
configure:3077: result: no
configure:3080: checking for suffix of executables
configure:3087: gcc -o conftestconftest.c  >&5
configure:3091: $? = 0
configure:3115: result:
configure:3121: checking for suffix of object files
configure:3147: gcc -c   conftest.c >&5
configure:3151: $? = 0
configure:3174: result: o
configure:3178: checking whether we are using the GNU C compiler
configure:3207: gcc -c   conftest.c >&5
configure:3214: $? = 0
configure:3231: result: yes
configure:3240: checking whether gcc accepts -g
configure:3270: gcc -c -g  conftest.c >&5
configure:3277: $? = 0
configure:3378: result: yes
configure:3395: checking for gcc option to accept ISO C89
configure:3469: gcc  -c -g -O2  conftest.c >&5
configure:3476: $? = 0
configure:3499: result: none needed
configure:3519: checking dependency style of gcc
configure:3609: result: gcc3
configure:3634: checking for special C compiler options needed for large 
files
configure:3729: result: no
configure:3735: checking for _FILE_OFFSET_BITS value needed for large files
configure:3770: gcc -c -g -O2  conftest.c >&5
conftest.c:16: warning: left shift count >= width of type
conftest.c:16: warning: left shift count >= width of type
conftest.c:18: error: size of array 'off_t_is_large' is negative
configure:3777: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "sqlite"
| #define PACKAGE_TARNAME "sqlite"
| #define PACKAGE_VERSION "3.6.14.2"
| #define PACKAGE_STRING "sqlite 3.6.14.2"
| #define PACKAGE_BUGREPORT "http://www.sqlite.org;
| #define PACKAGE "sqlite"
| #define VERSION "3.6.14.2"
| /* end confdefs.h.  */
| #include 
|  /* Check that off_t can represent 2**63 - 1 correctly.
| We can't simply define LARGE_OFF_T to be 9223372036854775807,
| since some C++ compilers masquerading as C compilers
| incorrectly reject 9223372036854775807.  */
| #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
|   int