On Thu, 10 Jul 2008, Dr. David Kirkby wrote:
> I tried to build sage 3.0.4 on my laptop (Solaris Express Community
> Edition snv_91 X86), but it fails when building pari. It looks from a
> search of the web, that the error generated:
>
> "ld: fatal: relocations remain against allocatable but non-writable
> sections"
>
> might be a result of using the Sun linker with gcc, rather than the
> GNU linker. Yet various binary distributions of gcc (including
> Blastwave), make gcc use the Sun linker, not the GNU one. My gcc 4.0.2
> was configured with:  --without-gnu-ld --with-ld=/usr/ccs/bin/ld.
>
> I downloaded pari from
> http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-2.3.3.tar.gz and get the
> same problem. Perhaps I need to build a gcc which uses the GNU linker, not
> the Sun one. Yet various sources say the Sun one works better, so its
> anyone's guess what problems using the GNU linker might create.
>
> I guess the quicker we can get away from gcc and use Sun's compilers
> on Solaris the better. gcc can be built many ways on Solaris, and they
> are not all equal.

Interestingly, pari is built before ntl so it worked on your sparc but not 
on your x86 machine. It seems it is a quality issue with how pari build
shared libs - on linux we get a warning and a performance hit - you get
a failure:
rm -f libpari-gmp.so.2.3.3
gcc  -o 
libpari-gmp.so.2.3.3 -shared  -O3 -Wall -fno-strict-aliasing 
-fomit-frame-pointer     -Wl,-shared,-soname=libpari-gmp.so.2 
mp.o mpinl.o Flx.o Qfb.o RgX.o alglin1.o alglin2.o arith1.o arith2.o base1.o 
base2.o base3.o base4.o base5.o bibli1.o bibli2.o buch1.o buch2.o buch3.o 
buch4.o galconj.o gen1.o gen2.o gen3.o ifactor1.o perm.o polarit1.o 
polarit2.o polarit3.o rootpol.o subcyclo.o subgroup.o trans1.o trans2.o 
trans3.o anal.o compat.o default.o errmsg.o es.o init.o intnum.o members.o 
sumiter.o aprcl.o elldata.o elliptic.o galois.o groupid.o kummer.o mpqs.o 
nffactor.o part.o stark.o subfield.o 
thue.o -lc -ldl -lm -L/home/francois/Work/SAGE/local/lib -lgmp 
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../../../i686-pc-linux-gnu/bin/ld: 
warning: creating a DT_TEXTREL in object.
^^^^^^^^^^^^^^^^^^^^^^^^^^
This is bad in any case! You shouldn't have DT_TEXTREL it is a sign that
some of the object files haven't been compiled with the proper PIC flag.
In pari's case that's all of them. I just checked.

Francois


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to