sage 4.6 alpha2 does not build on mark2

7 views
Skip to first unread message

Dima Pasechnik

unread,
Oct 1, 2010, 5:22:20 AM10/1/10
to sage-solaris, sage-r...@googlegroups.com
is it just me?
gnutls does not build:

....
gcc -std=gnu99 -g -O2 -D_REENTRANT -D_THREAD_SAFE -I/home/dima/sage/
mark/sage-4.
6.alpha2/local/include -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wno-pointer-
sign -o .
libs/gnutls-serv serv-gaa.o serv.o common.o select.o -L/home/dima/
sage/mark/sag
e-4.6.alpha2/spkg/build/gnutls-2.2.1.p5/src/lib/.libs ../lib/.libs/
libgnutls.so
-L/home/dima/sage/mark/sage-4.6.alpha2/local/lib ../libextra/.libs/
libgnutls-ext
ra.so /home/dima/sage/mark/sage-4.6.alpha2/local/lib/libopencdk.so /
home/dima/sa
ge/mark/sage-4.6.alpha2/spkg/build/gnutls-2.2.1.p5/src/lib/.libs/
libgnutls.so -l
z ../gl/.libs/libgnu.a /home/dima/sage/mark/sage-4.6.alpha2/local/lib/
libgcrypt.
so /home/dima/sage/mark/sage-4.6.alpha2/local/lib/libgpg-error.so -
lsocket -R/h
ome/dima/sage/mark/sage-4.6.alpha2/local/lib
serv.o: In function `peer_print_info':
/home/dima/sage/mark/sage-4.6.alpha2/spkg/build/gnutls-2.2.1.p5/src/
src/serv.c:4
89: undefined reference to `gnutls_x509_crt_print'
common.o: In function `print_x509_info':
/home/dima/sage/mark/sage-4.6.alpha2/spkg/build/gnutls-2.2.1.p5/src/
src/common.c
:151: undefined reference to `gnutls_x509_crt_check_hostname'
../libextra/.libs/libgnutls-extra.so: undefined reference to
`_gnutls_hostname_c
ompare'
collect2: ld returned 1 exit status
make[5]: *** [gnutls-serv] Error 1
make[5]: Leaving directory `/home/dima/sage/mark/sage-4.6.alpha2/spkg/
build/gnut
ls-2.2.1.p5/src/src'

I seem to have done everything as should, i.e. certainly
source /usr/local/skynet_bash_profile
before make

Dima

David Kirkby

unread,
Oct 1, 2010, 6:27:53 AM10/1/10
to sage-s...@googlegroups.com
On 1 October 2010 10:22, Dima Pasechnik <dim...@gmail.com> wrote:
> is it just me?
> gnutls does not build:

> I seem to have done everything as should, i.e. certainly
> source /usr/local/skynet_bash_profile
> before make
>
> Dima

I've just tried that, and see that gcc is built with the GNU linker
and GNU assembler - gcc -v shows:

--with-gnu-as --with-as=/usr/local/binutils-2.20.1/sparc-SunOS-ultrasparc3-gcc-4.4.3/bin/as
--with-gnu-ld --with-ld=/usr/local/binutils-2.20.1/sparc-SunOS-ultrasparc3-gcc-4.4.3/bin/ld

But for Solaris one is much better using the Sun linker, not the GNU
one. This is even documented in the gcc manual. For the assembler it
is less of an issue, though I prefer to use the Sun one on SPARC too,
using the GNU assembler on Solaris x86.

Mariah has already built gcc with the Sun linker and Sun assembler.

You must make sure the first gcc in your path is the one at

/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin/gcc

so gcc -v shows it was configured with:

--with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld

I've actually set up a script so that depending on whether I log in on
odd or even minutes past the hour, my setup works 32-bit or 64-bit:


export PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin:$HOME/bin:/usr/sfw/bin:/usr/bin:/usr/sbin:/usr/local/SunSt
udio12-200709/sparc-SunOS/SUNWspro/bin:/usr/ccs/bin
export SAGE_FORTRAN=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin/gfortran
export LD_LIBRARY_PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib:/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-su
n-as-ld/lib/sparcv9
export SAGE_FORTRAN_LIB=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/libgfortran.so
cd `uname -n`/32
fi
fi

$HOME/bin contains the GNU versions of tar and make.

If you dont have them, then

mkdir $HOME/bin
cp /usr/sfw/bin/gmake $HOME/bin/make
cp /usr/sfw/bin.gtar $HOME/bin/tar

I've emailed William a few times about the mess his changes have made
on t2, and are hoping to resolve the issues on t2.

See also

http://wiki.sagemath.org/skynet

though I think that document might not result in you getting the GNU
versions of make and tar in your path first. That is essential on
Solaris.


Dave

Dima Pasechnik

unread,
Oct 1, 2010, 7:03:11 AM10/1/10
to sage-solaris, sage-...@googlegroups.com
Dave,

Oh, I see.
/usr/local/skynet_bash_profile is messed up for mark[2]
If I understand right, this file is supposed to be an one-stop
thing to be used to set Sage-building tools right.

I attach the diff that is supposed to make it right.
Re-running the sage build on mark2 now...

Dima

*** skynet_bash_profile Fri Oct 1 06:52:58 2010
--- /usr/local/skynet_bash_profile Thu Aug 5 16:25:44 2010
***************
*** 143,158 ****
fi

if [ `/bin/hostname` == "mark" ] || [ `/bin/hostname` == "mark2" ];
then
! PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin:
$PATH:/usr/ccs/bin
export PATH

! LD_LIBRARY_PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-
as-ld/lib:/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/
sparcv9:/usr/local/flex-2.5.35/sparc-SunOS-ultrasparc3-gcc-4.4.3/lib
export LD_LIBRARY_PATH

! SAGE_FORTRAN=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-
ld/bin/gfortran
export SAGE_FORTRAN

! SAGE_FORTRAN_LIB=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-
as-ld/lib/libgfortran.so
export SAGE_FORTRAN_LIB

PYTHONPATH=/usr/local/mercurial-1.5/sparc-SunOS-ultrasparc3/lib/
python
--- 143,158 ----
fi

if [ `/bin/hostname` == "mark" ] || [ `/bin/hostname` == "mark2" ];
then
! PATH=/usr/local/bin/sparc-SunOS-ultrasparc3:$PATH:/usr/ccs/bin
export PATH

! LD_LIBRARY_PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3/lib:/
usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3/lib/sparcv9:/usr/local/
flex-2.5.35/sparc-SunOS-ultrasparc3-gcc-4.4.3/lib
export LD_LIBRARY_PATH

! SAGE_FORTRAN=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3/bin/
gfortran
export SAGE_FORTRAN

! SAGE_FORTRAN_LIB=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3/lib/
libgfortran.so
export SAGE_FORTRAN_LIB

PYTHONPATH=/usr/local/mercurial-1.5/sparc-SunOS-ultrasparc3/lib/
python


On Oct 1, 6:27 pm, David Kirkby <david.kir...@onetel.net> wrote:
> On 1 October 2010 10:22, Dima Pasechnik <dimp...@gmail.com> wrote:
>
> > is it just me?
> > gnutls does not build:
> > I seem to have done everything as should, i.e. certainly
> > source /usr/local/skynet_bash_profile
> > before make
>
> > Dima
>
> I've just tried that, and see that gcc is built with the GNU linker
> and GNU assembler - gcc -v shows:
>
> --with-gnu-as --with-as=/usr/local/binutils-2.20.1/sparc-SunOS-ultrasparc3-gcc-4.4.3/bin/ as
> --with-gnu-ld --with-ld=/usr/local/binutils-2.20.1/sparc-SunOS-ultrasparc3-gcc-4.4.3/bin/ ld
>
> But for Solaris one is much better using the Sun linker, not the GNU
> one. This is even documented in the gcc manual. For the assembler it
> is less of an issue, though I prefer to use the Sun one on SPARC too,
> using the GNU assembler on Solaris x86.
>
> Mariah has already built gcc with the Sun linker and Sun assembler.
>
> You must make sure the first gcc in your path is the one at
>
> /usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin/gcc
>
> so gcc -v shows it was configured with:
>
> --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld
>
> I've actually set up a script so that depending on whether I log in on
> odd or even minutes past the hour, my setup works 32-bit or 64-bit:
>
>    export PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin:$HOME/bin:/ usr/sfw/bin:/usr/bin:/usr/sbin:/usr/local/SunSt

John H Palmieri

unread,
Oct 1, 2010, 10:37:46 AM10/1/10
to sage-solaris
On Oct 1, 4:03 am, Dima Pasechnik <dimp...@gmail.com> wrote:
> Dave,
>
> Oh, I see.
> /usr/local/skynet_bash_profile is messed up for mark[2]
> If I understand right, this file is supposed to be an one-stop
> thing to be used to set Sage-building tools right.

See also

<http://wiki.sagemath.org/skynet>

John

Reply all
Reply to author
Forward
0 new messages