[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 1 test ( tests/mdemo2-make.test ) fails on Solaris 10
From: |
Dr. David Kirkby |
Subject: |
Re: 1 test ( tests/mdemo2-make.test ) fails on Solaris 10 |
Date: |
Sun, 14 Jun 2009 20:09:34 +0100 |
User-agent: |
Thunderbird 2.0.0.19 (X11/20090218) |
Ralf Wildenhues wrote:
Hello David,
* Dr. David Kirkby wrote on Fri, Jun 12, 2009 at 11:14:27PM CEST:
I built libtool 2.2.6 on a Sun T5240 (128 cores) running Solaris 10
update 4.
tests/mdemo2-make failed. (All the others pass)
Thanks for the report. Can you rerun the following
make check -k TESTS="tests/mdemo-conf.test tests/mdemo-make.test \
tests/mdemo-exec.test \
tests/mdemo-inst.test tests/mdemo-unst.test tests/mdemo-dryrun.test \
tests/mdemo2-conf.test tests/mdemo2-make.test tests/mdemo2-exec.test" \
VERBOSE=yes
and send the output of that, plus tests/testsuite.log? The command will
also run the new Autotest-based testsuite, which produces the latter
file. You might need to gzip files.
Thanks,
Ralf
OK,
I created a small script which redirected both stdout and stderr to the
same file.
./configure > conf.log 2>&1
make > make.log 2>&1
make check > make-check.log 2>&1
make check -k TESTS="tests/mdemo-conf.test tests/mdemo-make.test \
tests/mdemo-exec.test \
tests/mdemo-inst.test tests/mdemo-unst.test tests/mdemo-dryrun.test \
tests/mdemo2-conf.test tests/mdemo2-make.test tests/mdemo2-exec.test" \
VERBOSE=yes > mdemo.log 2>&1
then I run it. Note there is a serious problem in the file mdemo.log, with
../mdemo/.libs/libmlib.so: undefined reference to address@hidden'
../mdemo/.libs/libmlib.so: undefined reference to address@hidden'
../mdemo/.libs/libmlib.so: undefined reference to address@hidden'
../mdemo/.libs/libmlib.so: undefined reference to address@hidden'
I've noticed this exact same error message yesterday, or perhaps the day
before. A Google search will show they have come up for years. In each
case libtool has been used.
I've done some work on this, as these undefined references were really
screwing up the Sage software I'm working on.
http://www.sagemath.org/
Sage uses sqlite and it was sqlite which would not build properly,
instead generating an error similar to above. So I asked on the sqlite
mailing list.
address@hidden
My message is archived here:
http://www.mail-archive.com/address@hidden/msg43510.html
The reason sqlite was not building was that the link process when
building a shared library had
-lpthread -lc
Changing the order to
-lc -lpthread
solved the problem, but I've no idea if that was possible to do in
libtool anyway.
However, it was pointed out to me by a Sun employee that there is no
need to ever link libpthread in Solaris 10. Al the functionality has
been moved to libc.
What I have done for the Sage project is to basically hack the Makefile
generated by sqlite, and remove the -lpthread.
Reading these two short test files should make it obvious what I have done.
http://sage.math.washington.edu/home/kirkby/Solaris-fixes/sqlite/
So I think you must ensure that libpthread is linked after libc, not
before it. But on Solaris 10, it is not necessary to link libpthread at
all.
Note these 'undefined reference' messages with SUNW in the name have
come up for years with different versions of gcc. In gcc 4.3.2 I don't
see them, but I do see them in 4.4.0
Dave
Solaris-10u4-Sun-T5240.tar.gz
Description: GNU Zip compressed data